ApiDraw´Â ¸Þ´º¸¦ ÅëÇØ µµ±¸¸¦ ¼±ÅÃÇϵµ·Ï µÇ¾î Àִµ¥ ÀÌ·² °æ¿ì Åë»ó ¸Þ´º¿¡µµ ÇöÀç ¼±ÅÃµÈ µµ±¸ÀÇ »óŸ¦ º¸¿© ÁÖ¾î¾ß ÇÑ´Ù. ¼±ÅÃµÈ µµ±¸ Ç׸ñ¿¡ üũ Ç¥½Ã¸¦ ºÙÀ̵µ·Ï ÇØ º¸ÀÚ. ¸ÞÀÎ ¸Þ´º°¡ ÆîÃÄÁú ¶§ WM_INITMENU ¸Þ½ÃÁö°¡ Àü´ÞµÇ´Âµ¥ À̶§ NowTool°ú ´ëÀÀµÇ´Â Ç׸ñ¿¡ üũ Ç¥½Ã¸¦ ÇÑ´Ù.
LRESULT Main_OnInitMenu(HWND hWnd,WPARAM wParam,LPARAM lParam)
{
UINT MenuItem;
for (MenuItem=IDM_SHAPE_SELECT;MenuItem<=IDM_SHAPE_META;MenuItem++) {
CheckMenuItem((HMENU)wParam,MenuItem,MF_BYCOMMAND | MF_UNCHECKED);
}
CheckMenuItem((HMENU)wParam,IDM_SHAPE_SELECT+NowTool,MF_BYCOMMAND | MF_CHECKED);
return 0;
}
·çÇÁ¸¦ µ¹¸ç ¼±ÅÃ~¸ÞŸ ÆÄÀϱîÁöÀÇ Ç׸ñ¿¡ üũ Ç¥½Ã¸¦ ¸ðµÎ ¾ø¾Ø ÈÄ NowToolÀÇ µµ±¸¿¡ ´ëÇØ¼¸¸ üũ Ç¥½Ã¸¦ ºÙÀ̵µ·Ï Çß´Ù. ÀÌ µµ±¸µéÀº »óÈ£ ¹èŸÀûÀ¸·Î ¼±ÅõǴ ¿É¼ÇÀ̹ǷΠ¶óµð¿À Ç׸ñÀ¸·Î ¼±ÅÃµÈ µµÇüÀ» º¸¿©ÁÙ ¼öµµ ÀÖ´Ù. ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÏ¸é µÈ´Ù.
LRESULT Main_OnInitMenu(HWND hWnd,WPARAM wParam,LPARAM lParam)
{
CheckMenuRadioItem((HMENU)wParam,IDM_SHAPE_SELECT,IDM_SHAPE_META,
IDM_SHAPE_SELECT+NowTool,MF_BYCOMMAND);
return 0;
}
³í¸®ÀûÀ¸·Î ¶óµð¿À ±×·ìÀÌ ´õ ¸ÂÁö¸¸ üũ Ç¥½Ã°¡ ´õ ÀϹÝÀûÀ̹ǷΠApiDraw´Â üũ Ç¥½Ã¸¦ Ãâ·ÂÇϵµ·Ï Çß´Ù. ¾×¼¿·¯·¹ÀÌÅÍ ¸®¼Ò½ºµµ ¹Ì¸® ÀÛ¼ºµÇ¾î ÀÖÀ¸¹Ç·Î ¸ÞÀÎ ¸Þ½ÃÁö ·çÇÁ¿¡¼ ó¸®Çϵµ·Ï ÇÏÀÚ.
int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance
,LPSTR lpszCmdParam,int nCmdShow)
{
....
hWnd=CreateWindow(lpszClass,lpszClass,WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
NULL,(HMENU)NULL,hInstance,NULL);
ShowWindow(hWnd,nCmdShow);
HACCEL hAccel;
hAccel=LoadAccelerators(hInstance,MAKEINTRESOURCE(IDR_ACCELERATOR1));
while(GetMessage(&Message,0,0,0)) {
if (!TranslateAccelerator(hWnd,hAccel,&Message)) {
TranslateMessage(&Message);
DispatchMessage(&Message);
}
}
return (int)Message.wParam;
}
¼±ÅÃµÈ »óÅ¿¡¼ Del۸¸ ´©¸£¸é Áï½Ã »èÁ¦µÉ °ÍÀÌ´Ù. Ctrl+S, Ctrl+E µîÀÇ ¾×¼¿·¯·¹ÀÌÅÍ·Î µµ±¸¸¦ ¼±ÅÃÇÒ ¼öµµ ÀÖ°í Ctrl+Q¸¦ ´©¸£¸é Áï½Ã ¼±Åà »óÅ·Πµ¹¾Æ¿Â´Ù.