popup Menu에 OnUpdateUI Event 매크로 시행하기(OnUpdateUI for popup menu)

팜업메뉴(popup Menu)는 윈도우에서 마우스 오른쪽 버튼이 눌러지면 활성화 되는 메뉴로 주로 사용된다. 메뉴 생성성시 메뉴가 생성되는 윈도우를 설정해 주게 되어 있다.CWnd* pWnd에 부모 윈도우를 지정하게 된다. BOOL TrackPopupMenu( UINT nFlags, int x, int y, CWnd* pWnd, LPCRECT lpRect = NULL ); 단순하게 생각해서 메뉴가 보여지는 윈도우에서  메뉴를 생성하고 CMenu menu; menu.LoadMenu(IDR_MENU); CMenu * menu1 = menu.GetSubMenu(1);  //WM_SET_ENABLE menu1->TrackPopupMenu(TPM_LEFTALIGN |TPM_RIGHTBUTTON, point.x, point.y,this); 이벤트 핸들러를

ON_UPDATE_COMMAND_UI_RANGE(사용자 UI갱신매크로)

ON_UPDATE_COMMAND_UI 는 비활성화된 메뉴를 누르면 활성되고, 이미 활성화된 메뉴를 다시 누르면 비활성화가 되도록 하는 매크로이다. 프로그램 수행 도중 번번히 갱신되어야 하는 기능을 하는 매크로 이다. 메뉴나 툴바의 동작을 보면 어떤 조건에 따라 메뉴와 버튼이 Enable 또는 Disable 되는 것을 보았을 것이다. 이와 같이 빈번하게 작동하게 되는 것을 빠르고 쉽게 처리해주는 매크로가 ON_UPDATE_COMMAND_UI이다 Wizard 생성되는 매크로와 이벤트