ÅøÆÁµµ ¸®½ºÆ® ºä³ª ÇÁ·Î±×·¡½º ¹Ù °°Àº °øÅë ÄÁÆ®·ÑÀε¥ ÀÌ »ç½ÇÀÌ ¼±¶æ ÀÌÇØ°¡ °¡Áö ¾Ê´Â »ç¶÷µµ ÀÖÀ» °ÍÀÌ´Ù. Ç×»ó º¸ÀÌ´Â °ÍÀÌ ¾Æ´Ï°í ºÒ¾¦ ºÒ¾¦ ¾Æ¹« °÷¿¡³ª ³ªÅ¸³ª±â ¶§¹®¿¡ ¹º°¡ Ư¼öÇØ º¸ÀÌÁö¸¸ ¾Ë°í º¸¸é ½º½º·Î À§Ä¡¸¦ ¿Å±æ ¼ö ÀÖ´Â ÆË¾÷ À©µµ¿ìÀÏ»ÓÀÌ´Ù. ±×·¡¼ ´Ù¸¥ °øÅë ÄÁÆ®·ÑÀ» ÇÁ·Î±×·¡¹ÖÇÏ´Â ¹æ¹ý°ú ºñ½ÁÇÑ ¹æ¹ýÀ¸·Î ´Ù·ç¸é µÈ´Ù. ¼Ó¼ºÀÌ ÀÖ°í ¸Þ½ÃÁö·Î ÇÁ·Î±×·¡¹ÖÇϸç ÅëÁö ¸Þ½ÃÁö¸¦ ºÎ¸ð À©µµ¿ì·Î º¸³»±âµµ ÇÑ´Ù.
ÀÏÁ¾ÀÇ À©µµ¿ìÀ̹ǷΠ»ý¼ºÇÒ ¶§´Â ´ç¿¬È÷ CreateWindow(Ex) ÇÔ¼ö¸¦ »ç¿ëÇϴµ¥ Ŭ·¡½º À̸§À¸·Î TOOLTIPS_CLASS¸¦ ÁØ´Ù. ´Ü, ´Ù¸¥ ÄÁÆ®·Ñ°ú´Â ´Þ¸® »ý¼ºÇÒ ¶§ ¸î°¡Áö ´Ù¸¥ Á¡ÀÌ Àִµ¥ ÀÌ Á¡¸¸ ÁÖÀÇÇØ¼ »ý¼ºÇÏ¸é µÈ´Ù.
¨ç Ç×»ó ž¸ð½ºÆ® È®Àå ½ºÅ¸ÀÏÀ» ÁÖ´Â °ÍÀÌ ÁÁ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºÎ¸ð³ª ÇüÁ¦ À©µµ¿ìµé¿¡ ÀÇÇØ °¡·ÁÁ® ¾Èº¸ÀÌ´Â °æ¿ì°¡ ÀÖÀ¸¹Ç·Î Ưº°ÇÑ ÀÌÀ¯°¡ ¾ø´Â ÇÑ Å¾¸ð½ºÆ® È®Àå ½ºÅ¸ÀÏÀ» ÁÖµµ·Ï ÇÏÀÚ. Ư¼º»ó ´Ù¸¥ À©µµ¿ìº¸´Ù ¾Æ·¡¿¡ ÀÖÀ¸¸é Á¸Àç °¡Ä¡°¡ ¾ø¾îÁø´Ù.
¨è WS_POPUP ½ºÅ¸Àϰú WS_EX_TOOLWINDOW È®Àå ½ºÅ¸ÀÏÀ» Ç×»ó °¡Á®¾ß ÇÑ´Ù. ÅøÆÁÀÌ Å¸ÀÌÆ² ¹Ù³ª ½Ã½ºÅÛ ¸Þ´º¸¦ °¡Áö°í ÀÖÀ¸¸é ¾ó¸¶³ª ²ÃºÒ°ßÀ̰ڴ°¡? ÇÏÁö¸¸ ÀÌ µÎ ½ºÅ¸ÀÏÀº »ý¼ºÇÒ ¶§ ÁÖÁö ¾Ê¾Æµµ ÅøÆÁ ÄÁÆ®·ÑÀÌ ¾Ë¾Æ¼ Àû¿ëÇϹǷΠ»ý·« °¡´ÉÇÏ´Ù. Ç×»ó ÀÌ µÎ ½ºÅ¸ÀÏÀÌ Àû¿ëµÈ´Ù´Â °Í¸¸ ¾Ë¾Æ µÎÀÚ.
¨é »ý¼ºÇÒ ¶§ ÁØ ÁÂÇ¥´Â ¾Æ¹« Àǹ̰¡ ¾ø´Ù. ÅøÀ» µî·ÏÇÏ¸é ¾Ë¾Æ¼ Åø À§Ä¡·Î ¿Å°Ü°¡¹Ç·Î »ý¼ºÇÒ ¶§ ÁÂÇ¥´Â CW_USEDEFAULT·Î ÁÖ¸é º° ¹®Á¦°¡ ¾ø´Ù.
´ÙÀ½Àº ÅøÆÁÀÇ ½ºÅ¸ÀÏÀÌ´Ù. CreateWindow·Î ÅøÆÁÀ» ¸¸µé ¶§ ÀÌ ½ºÅ¸ÀÏ Áß ¿øÇÏ´Â ½ºÅ¸ÀÏÀ» ÁöÁ¤ÇØ ÁØ´Ù. ½Ç¿ëÀûÀ¸·Î ¾µ¸¸ÇÑ ½ºÅ¸ÀÏÀÌ º°·Î ¾øÀ¸¹Ç·Î ÀÏ´ÜÀº 0À¸·Î Á൵ Å« »ó°üÀÌ ¾ø´Ù.
½ºÅ¸ÀÏ |
¼³¸í |
TTS_ALWAYSTIP |
¼ÒÀ¯ À©µµ¿ì°¡ ¾×Ƽºê »óŰ¡ ¾Æ´Ò ¶§µµ ÅøÆÁÀ» º¸¿© ÁØ´Ù. ÀÌ ½ºÅ¸ÀÏÀÌ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é ¾×Ƽºê »óÅÂÀÏ ¶§¸¸ ÅøÆÁÀÌ ³ªÅ¸³´Ù. ÀϹÝÀûÀ¸·Î ÀÌ ½ºÅ¸ÀÏÀº ÁÖÁö ¾Ê´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù. |
TTS_BALLOON |
5.80ÀÌ»ó.dz¼±Çü µµ¿ò¸»À» º¸¿©ÁØ´Ù. |
TTS_NOANIMATE |
5.80ÀÌ»ó.½½¶óÀ̵ù ¾Ö´Ï¸ÞÀ̼ÇÀ» ÇÏÁö ¾Êµµ·Ï ÇÑ´Ù. |
TTS_NOFADE |
5.80ÀÌ»ó.ÆäÀÌµå ¾Ö´Ï¸ÞÀ̼ÇÀ» ÇÏÁö ¾Êµµ·Ï ÇÑ´Ù. |
TTS_NOPREFIX |
ÅøÆÁ ÄÁÆ®·ÑÀº Åø ÅØ½ºÆ®ÀÇ &¸¦ Á¦°ÅÇØ Áִµ¥ ÀÌ ½ºÅ¸ÀÏÀ» ÁÖ¸é &¸¦ Á¦°ÅÇÏÁö ¾Êµµ·Ï ÇÑ´Ù. Åø ÅØ½ºÆ®¸¦ ¸Þ´º¿Í µ¿ÀÏÇÏ°Ô ÀÛ¼ºÇϰíÀÚ ÇÒ °æ¿ì´Â ¸Þ´ºÀÇ ´ÜÃà۸¦ ÁöÁ¤ÇÏ´Â & ¹®ÀÚ¸¦ Á¦°ÅÇÏ´Â °ÍÀÌ ÁÁ´Ù. ¿¹¸¦ µé¾î ¸Þ´º Ç׸ñ &Open¿¡ ´ëÇÑ Åø ÅØ½ºÆ®´Â &Openº¸´Ù´Â OpenÀÌ ´õ º¸±â ÁÁ´Ù. |
ÇϳªÀÇ ÅøÆÁ ÄÁÆ®·ÑÀ» ¸¸µé¸é ÀÌ ÄÁÆ®·Ñ·Î º¹¼ö°³ÀÇ Åø¿¡ ´ëÇØ ÅøÆÁ ±â´ÉÀ» Á¦°øÇÒ ¼ö ÀÖ´Ù. 10°³ÀÇ ¹öư¿¡ ´ëÇØ ÅøÆÁÀ» Á¦°øÇÒ ¶§ 10°³ÀÇ ÅøÆÁ ÄÁÆ®·ÑÀ» ¸¸µé Çʿ䰡 ¾øÀ¸¸ç ÇϳªÀÇ ÅøÆÁÀ» ¸¸µç ÈÄ ÀÌ ÄÁÆ®·Ñ¿¡ 10°³ÀÇ ÅøÀ» µî·ÏÇÏ¸é µÈ´Ù. ¾îÂ÷ÇÇ Çѹø¿¡ ÇϳªÀÇ ÅøÆÁ¸¸ º¸ÀÌ¹Ç·Î ÅøÆÁ ÄÁÆ®·ÑÀº Çϳª¸¸ ÀÖÀ¸¸é µÈ´Ù. ¹°·Ð ¾ÆÁÖ Æ¯¼öÇÑ °æ¿ì, ¿¹¸¦ µé¾î ½ºÅ¸ÀÏÀÌ ´Ù¸¥ ÅøÆÁÀ» µ¿½Ã¿¡ »ç¿ëÇÏ°í ½Í´Ù¸é µÑ ÀÌ»ó »ý¼ºÇصµ »ó°ü¾ø´Ù.
ÅøÆÁ ÄÁÆ®·ÑÀ» »ý¼ºÇÑ ÈÄ ÅøÆÁ ´ë»óÀÌ µÇ´Â ÅøÀ» µî·ÏÇØ¾ß Çϴµ¥ À̶§´Â TTM_ADDTOOL ¸Þ½ÃÁö¸¦ »ç¿ëÇÑ´Ù. ÀÌ ¸Þ½ÃÁöÀÇ lParamÀ¸·Î µî·ÏµÉ Åø¿¡ ´ëÇÑ Á¤º¸¸¦ °¡Áö´Â TOOLINFO ±¸Á¶Ã¼¸¦ Àü´ÞÇØ ÁØ´Ù. ÀÌÂëµÇ¸é ÁüÀÛÀÌ °¡°ÚÁö¸¸ ÀÌ ±¸Á¶Ã¼°¡ ¹Ù·Î ÅøÆÁ ÄÁÆ®·ÑÀÇ ÇÙ½ÉÀ̶ó ÇÒ ¼ö ÀÖÀ¸¸ç ÅøÆÁÀ» ÀÚÀ¯ ÀÚÀç·Î ´Ù·ç°í ½Í´Ù¸é ÀÏ´Ü ÀÌ ±¸Á¶Ã¼¸¦ ÀÌÇØÇØ¾ß ÇÏ°í ¾Ï±âÇÒ ¼ö ÀÖÀ¸¸é ´õ ÁÁ´Ù. ¾î¶»°Ô ¼±¾ðµÇ¾î ÀÖ´ÂÁö º¸ÀÚ.
typedef struct tagTOOLINFO{
UINT cbSize;
UINT uFlags;
HWND hwnd;
UINT_PTR uId;
RECT rect;
HINSTANCE hinst;
LPTSTR lpszText;
#if (_WIN32_IE >= 0x0300)
LPARAM lParam;
#endif
} TOOLINFO, NEAR *PTOOLINFO, FAR *LPTOOLINFO;
cbSize
¹öÀü È®ÀÎÀ» À§ÇÑ ±¸Á¶Ã¼ÀÇ Å©±âÀ̸ç sizeof(TOOLINFO)¸¦ ´ëÀÔÇØ ÁÖ¸é µÈ´Ù. ÀÌ ¸â¹öÀÇ °ªÀº ¹Ýµå½Ã ´ëÀÔÇØ ÁÖ¾î¾ß ÇÑ´Ù.
uFlags
ÅøÆÁÀÇ Ç¥½Ã ¹æ½ÄÀ» ÁöÁ¤ÇÏ´Â Ç÷¡±×µéÀÌ¸ç ´ÙÀ½ Ç÷¡±×µéÀÇ Á¶ÇÕÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. °¢ Ç÷¡±×ÀÇ È¿°ú¿¡ ´ëÇØ¼´Â ´Ù½Ã °³º°ÀûÀ¸·Î ½Ç½ÀÀ» ÇÒ ¿¹Á¤À̹ǷΠ´ëÃæ Àǹ̸¸ ºÁ µÎµµ·Ï ÇÏÀÚ.
Ç÷¡±× |
¼³¸í |
TTF_ABSOLUTE |
TTF_TRACK Ç÷¡±×¿Í ÇÔ²² »ç¿ëÇϸç Á¤È®ÇÑ À§Ä¡¿¡ ÅøÆÁÀÌ ³ªÅ¸³ªµµ·Ï ÇÑ´Ù. |
TTF_CENTERTIP |
ÅøÆÁÀÌ ÅøÀÇ ¾Æ·¡ÂÊ Áß¾Ó¿¡ ³ªÅ¸³ªµµ·Ï ÇÑ´Ù. ÀÌ Ç÷¡±×°¡ ¾øÀ¸¸é Ä¿¼ À§Ä¡¿¡ ³ªÅ¸³´Ù. |
TTF_IDISHWND |
µî·ÏµÇ´Â ÅøÀÌ À©µµ¿ì¶ó´Â ¶æÀ̸ç uId ¸â¹ö´Â À©µµ¿ì Çڵ鰪À» °¡Áø´Ù. ÀÌ Ç÷¡±×°¡ ¾øÀ¸¸é ÅøÀº »ç°¢ ¿µ¿ªÀ̸ç uId´Â ÅøÀÇ IDÀÌ´Ù. |
TTF_PARSELINKS |
Åø ÅØ½ºÆ®ÀÇ ¸µÅ©¸¦ ÇØ¼®Çϵµ·Ï ÇÑ´Ù. |
TTF_RTLREADING |
¿À¸¥ÂÊ¿¡¼ ¿ÞÂÊÀ¸·Î ÅØ½ºÆ®¸¦ Ãâ·ÂÇÑ´Ù. ÇÑ±Û À©µµ¿ìÁî¿¡¼´Â ÇØ´çµÇÁö ¾Ê´Â´Ù. |
TTF_SUBCLASS |
ÅøÆÁ ÄÁÆ®·ÑÀÌ ÅøÀ» ¼ºê Ŭ·¡½ÌÇϵµ·Ï ÇÑ´Ù. |
TTF_TRACK |
ÅøÆÁÀÇ À§Ä¡¸¦ TTM_TRACKPOSITION ¸Þ½ÃÁö¿¡¼ ÁöÁ¤ÇÑ ´ë·Î À̵¿½ÃŲ´Ù. |
TTF_TRANSPARENT |
¸¶¿ì½º ¸Þ½ÃÁö¸¦ ºÎ¸ð À©µµ¿ì¿¡°Ô Àü´ÞÇÑ´Ù. Åõ¸íÇÏ°Ô º¸ÀÌ´Â °ÍÀº ¾Æ´Ï´Ù. |
hwnd
ÅøÀÇ ºÎ¸ð À©µµ¿ì ÇÚµéÀ̸ç ÀÌ À©µµ¿ì·Î ÅøÆÁ ÄÁÆ®·ÑÀÇ ÅëÁö ¸Þ½ÃÁö°¡ Àü´ÞµÈ´Ù. ÅøÀ» ¼ÒÀ¯Çϰí ÀÖ´Â À©µµ¿ìÀÇ ÇÚµéÀÌÁö ÅøÆÁ ÄÁÆ®·ÑÀÇ ºÎ¸ð À©µµ¿ì³ª ÅøÀÇ À©µµ¿ì ÇÚµéÀÌ ¾Æ´ÔÀ» ÁÖÀÇÇÏÀÚ.
uId
ÅøÀÇ °íÀ¯ ¹øÈ£¿¡ ÇØ´çÇÏ´Â IDÀÌ´Ù. ÅøÀÌ À©µµ¿ìÀ̸é, Áï uFlags¿¡ TTF_IDISHWND Ç÷¡±×°¡ ÀÖÀ¸¸é ÀÌ °ªÀº ÅøÀÇ À©µµ¿ì ÇÚµéÀÌ µÇ¸ç »ç°¢ ¿µ¿ªÀ̸é, Áï uFlags¿¡ TTF_IDISHWND Ç÷¡±×°¡ ¾øÀ¸¸é ÀÌ °ªÀº 0ºÎÅÍ ½ÃÀÛµÇ´Â ÅøÀÇ ÀÏ·Ã ¹øÈ£ÀÌ´Ù. °íÀ¯ÇÑ °ªÀ» °¡Á®¾ß ÇÏ¹Ç·Î Åø³¢¸® Áߺ¹µÇ¾î¼´Â ¾ÈµÈ´Ù.
rect
ÅøÀÇ »ç°¢ ¿µ¿ªÀ» ÁöÁ¤ÇÑ´Ù. À©µµ¿ì ÅøÀÎ °æ¿ì ÇÚµé·ÎºÎÅÍ ¿µ¿ªÀ» ±¸ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÀÌ ¸â¹ö´Â ¹«½ÃµÈ´Ù. ÁÂÇ¥°ªÀº ºÎ¸ð À©µµ¿ìÀÇ ÀÛ¾÷ ¿µ¿ª ±âÁØÀÌ´Ù.
hinst
¹®ÀÚ¿ ¸®¼Ò½º¸¦ °¡Áø ÀνºÅϽº ÇÚµéÀÌ´Ù. ¹®ÀÚ¿ ¸®¼Ò½º¸¦ ¾²Áö ¾ÊÀ» °æ¿ì ÀÌ ¸â¹ö´Â ¹«½ÃµÈ´Ù.
lpszText
Åø ÅØ½ºÆ® ¹®ÀÚ¿ÀÌ´Ù. ¼¼°¡Áö ÇüÅ·ΠÁöÁ¤ÇÒ ¼ö Àִµ¥ °£´ÜÇÏ°Ô ¹®ÀÚ¿ »ó¼ö¸¦ ÁÙ ¼ö ÀÖÀ¸¸ç ¹®ÀÚ¿ ¸®¼Ò½ºÀÇ ID¸¦ ÁÙ ¼öµµ ÀÖ´Ù. LPSTR_TEXTCALLBACK °ªÀ» ÁÖ¸é ºÎ¸ð À©µµ¿ì¿¡°Ô TTN_GETDISPINFO ÅëÁö ¸Þ½ÃÁö¸¦ º¸³» ½ÇÇàÁß¿¡ ¹®ÀÚ¿À» ±¸ÇÑ´Ù. Åø ÅØ½ºÆ®¸¦ ±¸ÇÒ ¶§ ÀÌ ¸â¹ö´Â ÃæºÐÇÑ ±æÀÌÀÇ ¹öÆÛ¸¦ °¡¸®Å°°í ÀÖ¾î¾ß ÇÑ´Ù.
lParam
»ç¿ëÀÚ Á¤ÀÇ µ¥ÀÌÅÍÀÌ´Ù.
cbSize, hwnd, lpszText ¸â¹ö´Â ÅøÀ» µî·ÏÇÒ ¶§ Ç×»ó Àü´ÞÇØ ÁÖ¾î¾ß ÇÑ´Ù. ³ª¸ÓÁö ¸â¹ö´Â ÅøÀÇ Á¾·ù¿¡ µû¶ó ¼±ÅÃÀûÀ¸·Î Àü´ÞÇÒ ¼ö ÀÖÀ¸¸ç Àǹ̵µ ¾à°£ ´Þ¶óÁø´Ù.
¸â¹ö |
À©µµ¿ì Åø |
»ç°¢¿µ¿ª Åø |
uFlags |
TTF_IDISHWND Æ÷ÇÔ |
TTF_IDISHWND ¹ÌÆ÷ÇÔ |
hId |
ÅøÀÇ À©µµ¿ì ÇÚµé |
0ºÎÅÍ ½ÃÀÛÇÏ´Â ÅøÀÇ °íÀ¯ ¹øÈ£ |
rect |
¹«½Ã |
»ç°¢ ¿µ¿ª ÁÂÇ¥ |
ÅøÆÁÀÇ »ý¼º°ú Åø µî·Ï¿¡ ÇÊ¿äÇÑ ±¸Á¶Ã¼±îÁö ¾Ë¾Æ ºÃÀ¸¹Ç·Î ´õ º¹ÀâÇØÁö±â Àü¿¡ °£´ÜÇÑ ¿¹Á¦¸¦ Çϳª ¸¸µé¾î º¸µµ·Ï ÇÏÀÚ.
#include <commctrl.h>
HWND hTip, hBtn;
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
INITCOMMONCONTROLSEX iccex;
RECT rt={300,50,500,150};
TOOLINFO ti;
switch(iMessage) {
case WM_CREATE:
iccex.dwICC=ICC_WIN95_CLASSES;
iccex.dwSize=sizeof(INITCOMMONCONTROLSEX);
InitCommonControlsEx(&iccex);
hTip=CreateWindowEx(WS_EX_TOPMOST,TOOLTIPS_CLASS,NULL,0,
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
hWnd,NULL,g_hInst,NULL);
hBtn=CreateWindow("button","¹öư",WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
50,50,200,100,hWnd,(HMENU)0,g_hInst,NULL);
ti.cbSize=sizeof(TOOLINFO);
ti.uFlags=TTF_SUBCLASS | TTF_IDISHWND;
ti.hwnd=hWnd;
ti.uId=(WPARAM)hBtn;
ti.lpszText="¹öưÀÔ´Ï´Ù";
SendMessage(hTip,TTM_ADDTOOL,0,(LPARAM)(LPTOOLINFO)&ti);
ti.uFlags=TTF_SUBCLASS;
ti.hwnd=hWnd;
ti.uId=0;
ti.lpszText="»ç°¢¿µ¿ªÀÔ´Ï´Ù";
ti.rect=rt;
SendMessage(hTip,TTM_ADDTOOL,0,(LPARAM)(LPTOOLINFO)&ti);
return 0;
case WM_PAINT:
hdc=BeginPaint(hWnd, &ps);
Rectangle(hdc,rt.left,rt.top,rt.right,rt.bottom);
EndPaint(hWnd, &ps);
return 0;
case WM_LBUTTONDOWN:
SendMessage(hTip,TTM_ACTIVATE,(WPARAM)TRUE,0);
return 0;
case WM_RBUTTONDOWN:
SendMessage(hTip,TTM_ACTIVATE,(WPARAM)FALSE,0);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}
¹öư ÄÁÆ®·Ñ Çϳª¿Í »ç°¢ ¿µ¿ª Çϳª¸¦ ¸¸µé°í µÎ ´ë»ó¿¡ ´ëÇØ ÅøÆÁÀ» ´Þ¾Æ º¸¾Ò´Ù. »ç°¢ ¿µ¿ªÀº ±»ÀÌ °æ°è¼±ÀÌ ÀÖ¾î¾ß ÇÒ Çʿ䰡 ¾øÁö¸¸ ºÐ¸íÇÑ È®ÀÎÀ» À§ÇØ WM_PAINT¿¡¼ »ç°¢ÇüÀ» ±×·Á ÁÖ¾ú´Ù. ½ÇÇàÇÑ ÈÄ ¸¶¿ì½º Ä¿¼¸¦ ¹öưÀ̳ª »ç°¢ ¿µ¿ª¿¡ °¡Á® °¡¸é ÅøÆÁÀÌ ³ªÅ¸³´Ù.
¸ðµç 󸮴 WM_CREATE¿¡¼ ´Ù Çϰí Àִµ¥ Äڵ带 ºÐ¼®ÇØ º¸ÀÚ. °øÅë ÄÁÆ®·ÑÀ» »ç¿ëÇÏ·Á¸é commctrl.h¸¦ Æ÷ÇÔÇϰí InitCommonControls(Ex) ÇÔ¼ö·Î °øÅë ÄÁÆ®·Ñ ¶óÀ̺귯¸®¸¦ ÃʱâÈÇØ¾ß Çϸç comctl32.libµµ ¸µÅ©½ÃÄÑ ÁÖ¾î¾ß ÇÑ´Ù. ¶óÀ̺귯¸® ÃʱâÈ ÈÄ ÅøÆÁ ÄÁÆ®·ÑÀ» »ý¼ºÇÏ¿´´Ù. WS_EX_TOPMOST È®Àå ½ºÅ¸ÀÏÀ» ÁÖ¾úÀ¸¸ç À©µµ¿ì ½ºÅ¸ÀÏÀº Ưº°È÷ ÁÙ °ÍÀÌ ¾øÀ¸¹Ç·Î 0À¸·Î ÁöÁ¤Çß´Ù. ½ºÅ¸ÀÏÀ» ÁÖÁö ¾Ê¾Æµµ WS_POPUP, WS_EX_TOOLWINDOW ½ºÅ¸ÀÏÀº µðÆúÆ®·Î Àû¿ëµÈ´Ù.
ÅøÆÁ ÄÁÆ®·Ñ »ý¼º ÈÄ ÅøÆÁ ´ë»óÀÎ ¹öư ÄÁÆ®·ÑÀ» Àû´çÇÑ À§Ä¡¿¡ »ý¼ºÇßÀ¸¸ç ¹öư°ú »ç°¢ ¿µ¿ª¿¡ ´ëÇØ µÎ °³ÀÇ ÅøÀ» µî·ÏÇÑ´Ù. ¹öưÀº À©µµ¿ìÀ̹ǷΠuFlags¿¡ TTF_IDISHWND Ç÷¡±×¸¦ ÁÖ¾úÀ¸¸ç uId¿¡ ¹öưÀÇ À©µµ¿ì ÇÚµéÀÎ hBtnÀ» ´ëÀÔÇØ ÁØ´Ù. TTF_SUBCLASS¶ó´Â Ç÷¡±×µµ ÁöÁ¤Çߴµ¥ ÀÌ Ç÷¡±×ÀÇ Àǹ̴ ´Ù¼Ò º¹ÀâÇϹǷΠ´ÙÀ½ Ç׿¡¼ µû·Î ÀÚ¼¼È÷ ¾Ë¾Æº¼ °ÍÀÌ´Ù.
¹öư ÅøÀ» µî·ÏÇÑ ÈÄ °ðÀÌ¾î »ç°¢ ¿µ¿ªÀ» µî·ÏÇÑ´Ù. À©µµ¿ì°¡ ¾Æ´Ï¹Ç·Î TTF_IDISHWND Ç÷¡±×´Â ÁÙ Çʿ䰡 ¾ø°í ´ë½Å rect ¸â¹ö¿¡ »ç°¢ ¿µ¿ªÀÇ ÁÂÇ¥¸¦ Àü´ÞÇØ ÁÖ¾î¾ß ÇÑ´Ù. uId¿¡´Â »ç°¢ ¿µ¿ªÀÇ °íÀ¯ ¹øÈ£¸¦ Áִµ¥ ¸¸¾à »ç°¢ ¿µ¿ªÀ» ´õ µî·ÏÇÑ´Ù¸é °è¼ÓÇØ¼ 1,2,3 À¸·Î Áõ°¡ÇÏ´Â °íÀ¯ ¹øÈ£¸¦ ÁÖ¸é µÈ´Ù.
ÀÌ·¸°Ô µÎ °³ÀÇ ÅøÀ» µî·ÏÇØ ³õÀ¸¸é ³ª¸ÓÁö ó¸®´Â ÅøÆÁ ÄÁÆ®·ÑÀÌ ¾Ë¾Æ¼ ÇÑ´Ù. ÅøÆÁ ÄÁÆ®·ÑÀº ÅøÀÇ ÁÂÇ¥¿Í À©µµ¿ì Çڵ鿡 ´ëÇÑ Á¤º¸¸¦ °¡Áö°í ÀÖÀ¸¹Ç·Î ¾î´À À§Ä¡¿¡¼ ÅøÆÁÀ» Ãâ·ÂÇØ¾ß ÇÒÁö¸¦ °è»êÇÒ ¼ö ÀÖ´Ù. Ç×»ó ¸¶¿ì½º À§Ä¡¸¦ °¨½ÃÇϰí ÀÖ´Ù°¡ µî·ÏµÈ Åø À§¿¡¼ ÀÏÁ¤½Ã°£ ¸Ó¹«¸£¸é Áï½Ã Åø ÅØ½ºÆ®¸¦ º¸¿©ÁÙ °ÍÀÌ´Ù.
¾ÆÁÖ °£´ÜÇÑ ÅøÆÁ ¿¹Á¦¸¦ ¸¸µé¾î ºÃ´Âµ¥ ÀÌ ¿¹Á¦¸¦ ÅëÇØ ÅøÆÁÀÇ »ý¼º ¹æ¹ý°ú Åø µî·Ï ¹æ¹ý, ±×¸®°í ¹«¾ùº¸´Ù TOOLINFO ±¸Á¶Ã¼¿¡ Àͼ÷ÇØÁöµµ·Ï ÇÏÀÚ. ÅøÀ» »èÁ¦ÇÒ ¶§´Â TTM_DELTOOL ¸Þ½ÃÁö¸¦ »ç¿ëÇϸç ÅøÀÇ È°¼ºÈ ¿©ºÎ¸¦ ½ÇÇàÁß¿¡ º¯°æÇÏ°í ½ÍÀ» ¶§´Â TTM_ACTIVATE ¸Þ½ÃÁö¸¦ »ç¿ëÇÑ´Ù. ¿¹Á¦¿¡¼ ¸¶¿ì½º ¿ÞÂÊ, ¿À¸¥ÂÊ ¹öư¿¡ ÀÌ ¸Þ½ÃÁö¸¦ È£ÃâÇÏ´Â Äڵ带 ³Ö¾î ÅøÆÁ ±â´ÉÀ» ½ÇÇàÁß¿¡ Ȱ¼º/ºñȰ¼ºÈ½Ãų ¼ö ÀÖµµ·Ï ÇØ ³õ¾Ò´Ù.