¸¶.¸Þ´º °ü¸®

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¸¦ ´©¸£¸é Áï½Ã ¼±Åà »óÅ·Πµ¹¾Æ¿Â´Ù.