WNDCLASSEX

WNDCLASSEX ±¸Á¶ â Ŭ·¡½º Á¤º¸¸¦ Æ÷ÇÔ ÇÕ´Ï´Ù. RegisterClassEx ¿Í GetClassInfoEx¸¦ ÇÔ²² »ç¿ë ÇÏ´Â ÇÔ¼ö.

WNDCLASSEX ±¸Á¶ WNDCLASS ±¸Á¶¿Í ºñ½ÁÇÕ´Ï´Ù. µÎ °¡Áö Â÷ÀÌÁ¡ÀÌ ÀÖ½À´Ï´Ù. WNDCLASSEX ±¸Á¶Ã¼ÀÇ Å©±â¸¦ ÁöÁ¤ ÇÏ´Â cbSize ¸â¹ö¸¦ Æ÷ÇÔ ÇÏ °í ÀÛÀº ¾ÆÀÌÄÜ ÇÚµéÀ» Æ÷ÇÔ ÇÏ´Â hIconSm ¸â¹ö â Ŭ·¡½º¿Í °ü·Ã µÈ.

typedef struct _WNDCLASSEX {UINT cbSize; 
    UINT ½ºÅ¸ÀÏ; 
    WNDPROC lpfnWndProc; 
    int cbClsExtra; 
    int cbWndExtra; 
    ÇÚµéÀÇ hInstance; 
    HICON hIcon; 
    HCURSOR hCursor; 
    HBRUSH hbrBackground; 
    LPCTSTR lpszMenuName; 
    LPCTSTR lpszClassName; 
    HICON hIconSm; 
} WNDCLASSEX 
 

ȸ¿ø

cbSize
ÀÌ ±¸Á¶Ã¼ÀÇ ¹ÙÀÌÆ®¿¡¼­ Å©±â¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ±¸¼º¿ø sizeof(wndclassex)À» ¼³Á¤ ÇÕ´Ï´Ù. GetClassInfoEx ÇÔ¼ö¸¦ È£Ãâ Çϱâ Àü¿¡ÀÌ ¸â¹ö¸¦ ¼³Á¤ ÇØ¾ß ÇÕ´Ï´Ù.
½ºÅ¸ÀÏ
Ŭ·¡½º style(s)¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ºñÆ® OR¸¦ »ç¿ë ÇÏ ¿© ½ºÅ¸ÀÏÀ» °áÇÕ µÉ ¼ö ÀÖ´Ù (|) ¿¬»êÀÚ. ÀÌ ±¸¼º¿øÀº ´ÙÀ½ °ªÀÇ Á¶ÇÕ µÉ ¼ö ÀÖ½À´Ï´Ù.:
°ª ¾×¼Ç
CS_BYTEALIGNCLIENT âÀÇ Å¬¶óÀ̾ðÆ® ¿µ¿ª (x ¹æÇâ)¿¡¼­ ¹ÙÀÌÆ® °æ°è¿¡ Á¤·ÄÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏ Ã¢ ¹× µð½ºÇ÷¹ÀÌ °¡·Î À§Ä¡ ³Êºñ¿¡ ¿µÇâÀ».
CS_BYTEALIGNWINDOW â (x ¹æÇâ)¿¡¼­ ¹ÙÀÌÆ® °æ°è¿¡ Á¤·ÄÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏ Ã¢ ¹× µð½ºÇ÷¹ÀÌ °¡·Î À§Ä¡ ³Êºñ¿¡ ¿µÇâÀ».
CS_CLASSDC ÇϳªÀÇ ÀåÄ¡ ÄÁÅؽºÆ® Ŭ·¡½ºÀÇ ¸ðµç â¿¡¼­ °øÀ¯¸¦ ÇÒ´ç ÇÕ´Ï´Ù. â Ŭ·¡½º¿¡ ƯÁ¤ ÇÁ·Î¼¼½º À̹ǷΠµ¿ÀÏÇÑ Å¬·¡½ºÀÇ Ã¢À» ¸¸µå´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ´ÙÁß ½º·¹µå¿¡ ´ë ÇÑ ºÒ°¡´É ÇÕ´Ï´Ù. ¶ÇÇÑ ½º·¹µå ÀåÄ¡ ÄÁÅؽºÆ®¸¦ µ¿½Ã¿¡ »ç¿ë ÇÏ´Â °ÍÀ» ½Ãµµ ÇÏ´Â °ÍÀÌ ºÒ°¡´É ÇÕ´Ï´Ù. ÀÌ °æ¿ì ½Ã½ºÅÛ ¼º°øÀûÀ¸·Î ±×¸®±â ÀÛ¾÷À» ¿Ï·á ÇÏ´Â ½º·¹µå°¡ Çϳª¸¸ ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ ÀåÄ¡ ÄÁÅؽºÆ®.
CS_DBLCLKS Ä¿¼­°¡ Ŭ·¡½º¿¡ ¼ÓÇϴ â ³»¿¡¼­ ¸¶¿ì½º¸¦ Ŭ¸¯ÇÒ ¶§ º¸³»´Â ¸Þ½ÃÁö â ÇÁ·Î½ÃÀú¸¦ µÎ ¹ø Ŭ¸¯.
CS_GLOBALCLASS CreateWindowEx ÇÔ¼ö¿¡ Àü´Þ µÈ hInstance ¸Å°³ º¯¼öÀÇ °ª¿¡ °ü°è ¾øÀÌ Å¬·¡½ºÀÇ Ã¢À» ¸¸µå´Â ÀÀ¿ëÀ» ÇÁ·Î±×·¥À» ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀ» ÁöÁ¤ ÇÏÁö ¾ÊÀº °æ¿ì CreateWindow (¶Ç´Â CreateWindowEx) ÇÔ¼ö¿¡ Àü´Þ µÈ hInstance ¸Å°³ RegisterClassEx ÇÔ¼ö¿¡ Àü´Þ µÈ hInstance ¸Å°³ º¯¼ö·Î µ¿ÀÏ Çؾß.
µ¿Àû ¿¬°á ¶óÀ̺귯¸® (DLL)¿¡¼­ â Ŭ·¡½º¸¦ ¸¸µé°í ·¹Áö½ºÆ®¸®¿¡¼­ ´ÙÀ½ Å° ¾Æ·¡¿¡ ÀÖ´Â DLLÀÇ À̸§À» ³ª¿­ ÇÏ ¿© ±Û·Î¹ú Ŭ·¡½º¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù.:
HKEY_LOCAL_MACHINE\¼ÒÇÁÆ®¿þ¾î
\Microsoft\Windows NT\
CurrentVersion\À©µµ¿ì\AppInit_DLLs
ÇÁ·Î¼¼½º°¡ ½ÃÀÛ µÉ ¶§¸¶´Ù ½Ã½ºÅÛ ±× °úÁ¤¿¡¼­ ÁøÀÔÁ¡ ÇÔ¼ö¸¦ È£Ãâ Çϱâ Àü¿¡ »õ·Î ½ÃÀÛµÈ ÇÏ´Â ÇÁ·Î¼¼½ºÀÇ ÄÁÅؽºÆ®¿¡¼­ ÁöÁ¤ µÈ DllÀ» ·Îµå ÇÕ´Ï´Ù. DLL ÃʱâÈ­ ÀýÂ÷ µ¿¾È Ŭ·¡½º¸¦ µî·Ï ÇØ¾ß ÇÏ °í CS_GLOBALCLASS ½ºÅ¸ÀÏÀ» ÁöÁ¤ ÇØ¾ß ÇÕ´Ï´Ù.
CS_HREDRAW Ŭ¶óÀ̾ðÆ® ¿µ¿ªÀÇ ³Êºñ¸¦ º¯°æ ÇÏ´Â À̵¿ ¶Ç´Â Å©±â Á¶Á¤ ÇÏ´Â °æ¿ì â Àüü¸¦ ´Ù½Ã ±×¸³´Ï´Ù.
CS_NOCLOSE â ¸Þ´º¿¡¼­ ´Ý±â ºñÈ°¼ºÈ­.
CS_OWNDC Ŭ·¡½ºÀÇ °¢ â¿¡ ´ë ÇÑ °íÀ¯ÇÑ ÀåÄ¡ ÄÁÅؽºÆ®¸¦ ÇÒ´çÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ ÀåÄ¡ ÄÁÅؽºÆ®.
CS_PARENTDC ÀÚ½Ä ºÎ¸ð¿¡ ±×¸± ¼ö ÀÖµµ·Ï ºÎ¸ð â°úÀÇ ÀÚ½Ä Ã¢ÀÇ Å¬¸®ÇÎ ¿µ¿ªÀ» ¼³Á¤ ÇÕ´Ï´Ù. CS_PARENTDC ½ºÅ¸ÀÏ ºñÆ® â ÀåÄ¡ ÄÁÅؽºÆ®´Â ½Ã½ºÅÛÀÇ Ä³½Ã¿¡¼­ ÀÏ¹Ý ÀåÄ¡ ÄÁÅؽºÆ®¸¦ ¹Þ½À´Ï´Ù. »óÀ§ÀÇ ÀåÄ¡ ÄÁÅؽºÆ® ¶Ç´Â ÀåÄ¡ ÄÁÅؽºÆ® ¼³Á¤À» ¾ÆÀÌ Á¦°ø ÇÏÁö ¾Ê½À´Ï´Ù. CS_PARENTDC¸¦ ÁöÁ¤ Çϸé ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¼º´ÉÀ» Çâ»ó ½Ãŵ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ ÀåÄ¡ ÄÁÅؽºÆ®.
CS_SAVEBITS È­¸é À̹ÌÁö´Â â¿¡ ÀÇÇØ °¡·ÁÁø ºÎºÐÀ» ºñÆ®¸ÊÀ¸·Î ÀúÀå ÇÕ´Ï´Ù. ½Ã½ºÅÛ ÀúÀå µÈ ºñÆ®¸ÊÀ» »ç¿ë ÇÏ ¿© âÀ» Á¦°Å ÇÏ´Â °æ¿ì È­¸é À̹ÌÁö¸¦ ´Ù½Ã ¸¸µì´Ï´Ù. ½Ã½ºÅÛÀº ¿ø·¡ À§Ä¡¿¡¼­ ºñÆ®¸ÊÀ» Ç¥½Ã ÇÏ °í Àü¼Û ÇÏÁö ¾Ê½À´Ï´Ù WM_PAINT ¸Þ½ÃÁö¸¦ windows ºñÆ®¸Ê »ç¿ë ÇÏ´Â ¸Þ¸ð¸® »èÁ¦ µÇÁö ¹× ´Ù¸¥ È­¸é ÀÛ¾÷ ÀúÀåµÈ µÈ À̹ÌÁö¸¦ ¹«È¿È­ ÇÏÁö´Â â¿¡ ÀÇÇØ °¡·ÁÁý´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº °£·«ÇÏ°Ô Ç¥½Ã µÇ °í ´ÙÀ½ ´Ù¸¥ ½ºÅ©¸° È°µ¿À» ¼öÇà Çϱâ Àü¿¡ Á¦°Å ÇÏ´Â ÀÛÀº â (¿¹¸¦ µé¾î, ¸Þ´º ¶Ç´Â ´ëÈ­ »óÀÚ)¿¡ ´ë ÇÑ À¯¿ë ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀ» ½Ã½ºÅÛ ¸ÕÀú ºñÆ®¸ÊÀ» ÀúÀåÇÒ ¸Þ¸ð¸®¸¦ ÇÒ´ç ÇØ¾ß ÇÕ´Ï´Ù ¶§¹®¿¡ âÀ» Ç¥½Ã ÇÏ´Â µ¥ ÇÊ¿äÇÑ ½Ã°£ Áõ°¡.
CS_VREDRAW À̵¿ ¶Ç´Â Å©±â Á¶Á¤ Ŭ¶óÀ̾ðÆ® ¿µ¿ªÀÇ ³ôÀÌ º¯°æ ÇÏ´Â °æ¿ì â Àüü¸¦ ´Ù½Ã ±×¸³´Ï´Ù.

lpfnWndProc
â ÇÁ·Î½ÃÀú¿¡ Æ÷ÀÎÅÍÀÔ´Ï´Ù. CallWindowProc ÇÔ¼ö¸¦ »ç¿ë ÇÏ ¿© â ÇÁ·Î½ÃÀú¸¦ È£Ãâ ÇØ¾ß ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ À¥ »çÀÌÆ®¸¦ ÂüÁ¶ ÇϽʽÿÀ. WindowProc.
cbClsExtra
â Ŭ·¡½º ±¸Á¶ ´ÙÀ½ ÇÒ´çÇÒ Ãß°¡ ¹ÙÀÌÆ® ¼ö¸¦ ÁöÁ¤ ÇÕ´Ï´Ù. ½Ã½ºÅÛ ÃʱâÈ­ 0 ¹ÙÀÌÆ®.
cbWndExtra
â ÀνºÅϽº ´ÙÀ½ ÇÒ´çÇÒ Ãß°¡ ¹ÙÀÌÆ® ¼ö¸¦ ÁöÁ¤ ÇÕ´Ï´Ù. ½Ã½ºÅÛ¿¡´Â 0 ¹ÙÀÌÆ®¸¦ ÃʱâÈ­ÇÕ´Ï´Ù. DLGWINDOWEXTRA¿¡ÀÌ ¸â¹ö¸¦ ¼³Á¤ ÇØ¾ß ÇÕ´Ï´Ù ÀÀ¿ë ÇÁ·Î±×·¥ WNDCLASSEX ¸¦ »ç¿ë ÇÏ ¿© ¸®¼Ò½º ÆÄÀÏÀÇ Å¬·¡½º Áö½Ã¹®À» »ç¿ë ÇÏ ¿© ¸¸µç ´ëÈ­ »óÀÚ µî·ÏÀ» ÇÏ´Â °æ¿ì.
hInstance
ÀÌ Å¬·¡½ºÀÇ Ã¢ ÇÁ·Î½ÃÀú ³»¿¡¼­ ÀνºÅϽº ÇÚµé.
hIcon
Ŭ·¡½º ¾ÆÀÌÄÜÀ» ó¸® ÇÕ´Ï´Ù. ÀÌ ¸â¹ö´Â ¾ÆÀÌÄÜ ¸®¼Ò½ºÀÇ ÇÚµé À̾î¾ß ÇÕ´Ï´Ù. »ç¿ëÀÚ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ Ã¢À» ÃÖ¼ÒÈ­ µÉ ¶§¸¶´ÙÀÌ ¸â¹ö°¡ NULL À̸é ÀÀ¿ë ÇÁ·Î±×·¥ ¾ÆÀÌÄÜÀ» ±×¸± ÇØ¾ß ÇÕ´Ï´Ù.
hCursor
Ŭ·¡½º Ä¿¼­¿¡ ´ë ÇÑ ÇÚµé. ÀÌ ¸â¹ö´Â Ä¿¼­ ¸®¼Ò½ºÀÇ ÇÚµé À̾î¾ß ÇÕ´Ï´Ù. ÀÌ ¸â¹ö°¡ NULL À̸é ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¸í½ÃÀûÀ¸·Î ¼³Á¤ ÇØ¾ß ÇÕ´Ï´Ù Ä¿¼­ ¸ð¾çÀÌ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ Ã¢À¸·Î ¸¶¿ì½º¸¦ À̵¿ÇÒ ¶§¸¶´Ù.
hbrBackground
Ŭ·¡½º ¹è°æ ºê·¯½Ã ó¸® ÇÕ´Ï´Ù. ÀÌ ±¸¼º¿ø ¹è°æ, ÆäÀÎÆ® ÇÏ´Â µ¥ »ç¿ëÇÒ ½ÇÁ¦ ºê·¯½Ã¿¡ ´ë ÇÑ ÇÚµé ¶Ç´Â »ö °ªÀÏ ¼ö ÀÖ½À´Ï´Ù. »ö»ó °ª (°ª 1 ¼±ÅÃÇÑ »ö»ó¿¡ Ãß°¡ µÇ¾î¾ß ÇÕ´Ï´Ù) ´ÙÀ½ Ç¥ÁØ ½Ã½ºÅÛ »ö»ó Áß Çϳª ¿©¾ß ÇÕ´Ï´Ù. »ö»ó °ªÀ» ÁöÁ¤ ÇÏ´Â °æ¿ì ´ÙÀ½ HBRUSH Çü½Ä Áß Çϳª·Î º¯È¯ ÇØ¾ß ÇÕ´Ï´Ù.:

COLOR_ACTIVEBORDER
COLOR_ACTIVECAPTION
COLOR_APPWORKSPACE
COLOR_BACKGROUND
COLOR_BTNFACE
COLOR_BTNSHADOW
COLOR_BTNTEXT
COLOR_CAPTIONTEXT
COLOR_GRAYTEXT
COLOR_HIGHLIGHT
COLOR_HIGHLIGHTTEXT
COLOR_INACTIVEBORDER
COLOR_INACTIVECAPTION
COLOR_MENU
COLOR_MENUTEXT
COLOR_SCROLLBAR
COLOR_WINDOW
COLOR_WINDOWFRAME
COLOR_WINDOWTEXT

½Ã½ºÅÛ Å¬·¡½º¸¦ ÇØÁ¦ ÇÏ´Â °æ¿ì ÀÚµ¿À¸·Î Ŭ·¡½º ¹è°æ ºê·¯½Ã¸¦ »èÁ¦ ÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¿©·¯ ÀνºÅϽº¸¦ Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù ¶§¹®¿¡ ÀÌ·¯ÇÑ ºê·¯½¬ »èÁ¦ Çؼ­´Â ¾È.

ÀÌ ¸â¹ö°¡ NULL À̸鿡 ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ Å¬¶óÀ̾ðÆ® ¿µ¿ª¿¡ ÆäÀÎÆ®¸¦ ¿äûÇÒ ¶§¸¶´Ù ±×°ÍÀÇ ÀÚ½ÅÀÇ ¹é±×¶ó¿îµå¿¡ ÆäÀÎÆ® ÇØ¾ß ÇÕ´Ï´Ù. ¹é±×¶ó¿îµå¸¦ »öÄ¥ ÇØ¾ß ÇÕ´Ï´Ù ¿©ºÎ¸¦ È®ÀÎ ÇÏ·Á¸é ÀÀ¿ë ÇÁ·Î±×·¥ WM_ERASEBKGND ¸Þ½ÃÁö¸¦ ó¸® Çϰųª Å×½ºÆ®ÀÇ fErase ¸â¹ö´Â PAINTSTRUCT ±¸Á¶Ã¼¿¡ ÀÇÇØ Ã¤¿ö´Â BeginPaint ÇÔ¼ö.

lpszMenuName
Æ÷ÀÎÅ͸¦ null·Î ³¡³ª´Â ¹®ÀÚ¿­ À̸§À¸·Î Ŭ·¡½º ¸Þ´º ¸®¼Ò½º À̸§À» ÁöÁ¤ ÇÏ´Â ¸®¼Ò½º ÆÄÀÏ¿¡ ³ªÅ¸³³´Ï´Ù. ¸Þ´º¸¦ ½Äº° ÇÏ´Â Á¤¼ö¸¦ »ç¿ë ÇÏ´Â °æ¿ì MAKEINTRESOURCE ¸ÅÅ©·Î »ç¿ë ÇÕ´Ï´Ù. ÀÌ ¸â¹ö°¡ NULL À̸éÀÌ Å¬·¡½º¿¡ ¼ÓÇÏ´Â windows ±âº» ¸Þ´º¸¦ ¾øÀ½ ÀÖ´Ù.
lpszClassName
Null·Î ³¡³ª´Â ¹®ÀÚ¿­¿¡ ´ë ÇÑ Æ÷ÀÎÅÍ ¶Ç´Â ¿ø¼Ò. ÀÌ ¸Å°³ º¯¼ö´Â ¿øÀÚ °æ¿ì GlobalAddAtom ÇÔ¼ö¿¡ ´ë ÇÑ ÀÌÀü È£Ãâ¿¡¼­ ¸¸µç ±Û·Î¹ú ¾ÆÅè À̾î¾ß ÇÕ´Ï´Ù. ¿øÀÚ, 16-ºñÆ® °ª lpszClassName; ³·Àº ¼ø¼­ ´Ü¾î¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ³ôÀº ¼ø¼­ ´Ü¾î´Â 0 À̾î¾ß ÇÕ´Ï´Ù.

â Ŭ·¡½º À̸§À» ÁöÁ¤ lpszClassName ¹®ÀÚ¿­ÀÎ °æ¿ì.

hIconSm
â Ŭ·¡½º¿¡ ÀÖ´Â ÀÛÀº ¾ÆÀÌÄÜÀ» ó¸® ÇÕ´Ï´Ù. ÀÌ ¸â¹ö°¡ NULL ÀÌ¸é ½Ã½ºÅÛ ÀÛÀº ¾ÆÀÌÄÜÀ¸·Î »ç¿ëÇÒ ÀûÀý ÇÑ Å©±âÀÇ ¾ÆÀÌÄÜ¿¡ ´ë ÇÑ hIcon ¸â¹ö¿¡ ÀÇÇØ ÁöÁ¤ µÈ ¾ÆÀÌÄÜ ¸®¼Ò½º °Ë»ö.

QuickInfo

nbsp;?Windows &NT: ¹öÀü 3.5 ÀÌ»óÀÌ ÇÊ¿ä ÇÕ´Ï´Ù.
Windows:Windows 95 ÀÌ»óÀÌ ÇÊ¿äÇÕ´Ï´Ù.
Windows CE:Áö¿ø µÇÁö ¾Ê½À´Ï´Ù.
Çì´õ:Winuser.h¿¡¼­ ¼±¾ðÇÕ´Ï´Ù.
À¯´ÏÄÚµå:À¯´ÏÄÚµå¿Í ANSI ±¸Á¶ Á¤ÀÇ.

Âü°í Ç׸ñ

â Ŭ·¡½º °³¿ä â Ŭ·¡½º ±¸Á¶, GetClassInfoEx, RegisterClassEx

 

Index