À©µµ¿ì ÇÁ·Î±×·¡¹Ö ÀÚ·á |
---|
Á¦¸ñ | [API] Child Window 1998/07/14 (08:57) |
À̸§ | ±èÈ¿¿ø |
¹øÈ£ | 24 |
Á¶È¸ | 440 |
º»¹® |
<Child Window Control> Child Window Proc¿¡¼´Â GerParent¸¦ È£ÃâÇÏ¿© Paretn Window HandleÀ» ¾òÀ» ¼ö ÀÖ´Ù. hwndParent=GetParent(hwndChild); SendMessage(hwndParent,iMsg,wParam,lParam); <Child Window ¸¸µé±â> hwndButton[i]=CreateWindow{ "button", button[i].text, WS_CHILD | WS_VISIBLE | button[i].style, // 10°³°¡ Á¸Àç // BS_PUSHBUTTON, // BS_DEFPUSHBUTTON, // BS_CHECKBOX, // BS_AUTOCHECKBOX, // BS_RADIOBUTTON, // BS_3STATE, // BS_AUTO3STATE, // BS_GROUPBOX, // BS_AUTORADIOBUTTON, // BS_OWNERDRAW cxChar, cyChar*(1+2*i), 20*cxChar, 7*cyChar/4, hwnd, (HMENU) i, ((LPCREATESTRUCT) lParam)->hInstance, //WM_CREATE ¸Þ½ÃÁö µ¿¾È¿¡ lParamÀÌ »ç½Ç»ó // hInstance¿ä¼Ò¸¦ °¡Áö´Â CREATESTRUCT // (creation structure)Çü½ÄÀÇ ±¸Á¶Ã¼¿¡ ´ëÇÑ // Æ÷ÀÎÅÍÀÌ´Ù. NULL ); <Child´Â ÀÚ½ÅÀÇ Parent¿Í ´ëÈÇÑ´Ù.> ¹öÆ°À» Ŭ¸¯Çϸé WM_COMMAND¸Þ½ÃÁö°¡ Child Window Control ¿¡¼ Parent Window¿¡ ÀüÇØÁø´Ù. LOWORD(wParam) : Â÷Àϵå À©µµ¿ì ID HIWORD(wParam) : ÀÎ½Ä ÄÚµå lParam : Â÷Àϵå À©µµ¿ì ÇÚµé ÀνÄÄÚµå´Â BN_CLICKED 0 BN_PAINT 1 BN_HILITE 2 BN_UNHILITE 3 BN_DISABLE 4 BN_DOUBLECLICKED 5 1-5±îÁöÀÇ ÀνÄÄÚµå´Â BS_USERBUTTONÀ̶ó´Â ´ÜÃß ½ºÅ¸ÀÏ¿¡ ´ëÇÑ °ÍÀ̹ǷÎ, ¿À·ÎÁö BN_CLICKED Äڵ常À» º¸°Ô µÈ´Ù. <Parent´Â ÀÚ½ÅÀÇ Child¿Í ´ëÈÇÑ´Ù.> À©µµ¿ì ÇÁ·Î½ÃÀúµµ Â÷Àϵå À©µµ¿ì ÄÁÆ®·Ñ¿¡ ¸Þ½ÃÁö¸¦ º¸³¾¼ö ÀÖ´Ù. BM_GETCHECK BM_SETCHECK BM_GETSTATE BM_SETSTATE BM_SETSTYLE BM_GETCHECK, BM_SETCHECK´Â üũ »óÀÚ¿Í, ¶óµð¿À ´ÜÃßÀÇ Ã¼Å© Ç¥½Ã »óŸ¦ ¾ò°í ¼³Á¤Çϱâ À§ÇÑ ¸Þ½ÃÁöÀÌ´Ù. BM_GETSTATE, BM_SETSTATE´Â ¸¶¿ì½º·Î ´©¸£°Å³ª ½ºÆäÀ̽º¸¦ ´·¶À» ¶§, ±× »óÅ°¡ Á¤»óÀÎÁö ´·È´ÂÁö¸¦ ¶æÇÑ´Ù. BM_SETSTYLEÀº ´ÜÃß°¡ ¸¸µé¾îÁø ÈÄ¿¡ ½ºÅ¸ÀÏÀ» º¯°æÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ´ÜÃßÀÇ ¹ø½ÀÓÀ» Èä³»³¾ ¼ö ÀÖ´Ù. SendMessage(hwndButton,BM_SETSTAE,1,0); SendMessage(hwndButton,BM_SETSTAE,0,0); BM_GETSTATE¸¦ º¸³»¸é, ´ÜÃß°¡ ´·ÁÁ³À¸¸é TRUE¸¦ Á¤»ó »óÅÂÀ̸é FALSE(0)¸¦ ¹ÝȯÇÑ´Ù. ±×·¯³ª, ´©¸£±â ´ÜÃß´Â on/offÁ¤º¸¸¦ ±â¾ïÇÏÁö ¾Ê±â ¶§¹®¿¡, BM_SETCHECK, BM_GETCHECK¸Þ½ÃÁö´Â »ç¿ëµÇÁö ¾Ê´Â´Ù. Â÷ÀϵåÀÇ À©µµ¿ì ÇÚµéÀ» ¾Ë¸é id=GetWindowLong(hwndChild,GWL_ID); ¸¦ ÀÌ¿ëÇÏ¿©, Â÷Àϵå À©µµ¿ìÀÇ ¾ÆÀ̵𸦠¾Ë ¼ö ÀÖ´Ù. id=GetDlgCtrlID(hwndChild); hwndChild=GetDlgItem(hwndParent,id); |