¸ÞÀÎ ¸Þ´º ¹Ù²Ù±â
MFC°¡ ±âº»ÀûÀ¸·Î Á¦°øÇÏ´Â IDR_MAINFRAME ¶ó´Â ¸Þ´º ´ë½Å ´Ù¸¥ ¸Þ´º¸¦ ·ÎµùÇϵµ·Ï °íÃ帱â·Î ÇÏ°Ú´Ù.
1) ¸®¼Ò½º¿¡ »õ ¸Þ´º¸¦ Ãß°¡ÇÑ´Ù. ¸Þ´ºÀÇ id´Â IDR_MENU_NEW ·Î ÇÑ´Ù.
2) MainFrm.cpp ÀÇ PreCreateWindow() ÇÔ¼ö¿¡¼ ´ÙÀ½°ú °°ÀÌ Ãß°¡ÇÑ´Ù.
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs)
)
return
FALSE;
// TODO: Modify the Window
class or styles here by modifying
// the CREATESTRUCT
cs
cs.hMenu = ::LoadMenu(AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDR_MENU_NEW));
// Ãß°¡
return TRUE;
}
(¼³¸í)
MFC°¡ ÀÛ¼ºÇØÁØ Äڵ忡´Â Ç×»ó IDR_MAINFRAME °¡ ±âº»¸Þ´º°¡ µÇ¾î ÀÖ´Ù. µû¶ó¼ ÀÌ°ÍÀ» ´Ù¸¥ ¸Þ´º·Î ¹Ù²ãÄ¡±âÇÏ·Á¸é ±âº»¸Þ´º°¡ ½Ã½ºÅÛ¿¡ "µî·Ï" µÇ´Â ½ÃÁ¡À» ¾Ë¾Æ³»¾î µî·ÏµÇ±â Àü¿¡ ¹Ù²ãÄ¡±â ÇÏ¸é µÇ´Â °ÍÀÌ´Ù.
¿©±â¼ PreCreateWindow() ÇÔ¼ö´Â À©µµ¿ì°¡ »ý¼ºµÇ±â Àü¿¡ ºÒ·ÁÁö´Â ÇÔ¼öÀÌ´Ù. ¸¸¾à À©µµ¿ì¿¡ ¹«½¼ Á¶ÀÛÀ» °¡ÇÏ°í ½Í´Ù¸é ¿©±â¼ ÀÎÀÚµéÀ» º¯°æÇØ ÁÖ¸é ±× ÀÎÀÚµéÀÌ À©µµ¿ì¿¡ Àû¿ëµÇ¾î À©µµ¿ì¿¡ ÀڱⰡ ¿øÇÑ Á¶ÀÛÀÌ µÇ´Â °ÍÀÌ´Ù.
PreCreateWindowÀÇ ÀÎÀÚÀÎ CREATESTRUCT´Â ´ÙÀ½°ú °°ÀÌ Á¤ÀÇµÈ ±¸Á¶Ã¼ÀÌ´Ù.
typedef struct tagCREATESTRUCT {
LPVOID lpCreateParams;
HANDLE hInstance;
HMENU hMenu; //
ÀÌ ºÎºÐ ÁÖ¸ñ
HWND hwndParent;
int cy;
int cx;
int y;
int x;
LONG style;
LPCSTR lpszName;
LPCSTR lpszClass;
DWORD dwExStyle;
} CREATESTRUCT;
¾ÕÀÇ ±¸Á¶Ã¼¿¡¼ HMENU hMenu; ¶ó´Â ºÎºÐ¿¡¼ ¸ÞÀÎ ¸Þ´º¿¡ ´ëÇÑ µî·ÏÀÌ ÀÌ·ç¾îÁø´Ù. µû¶ó¼ ÀÌ °ªÀ» ¿øÇÏ´Â hMenu °ªÀ¸·Î ¹Ù²Ù¸é µÉ °ÍÀÌ´Ù.