ON_COMMAND 메시지를 처리하는 Properties라는 CDialogEx 클래스가 있습니다. 이제 메인 메뉴에서 하위 메뉴로 ID_EDIT_PROPERTIES 메뉴 항목을 클릭하면 ON_COMMAND가 호출됩니다. 이벤트 처리기 마법사가 해당 코드를 작성했지만 응용 프로그램을 시작하면 메뉴 항목이 회색으로 표시됩니다. ON_UPDATE_COMMAND_UI가 발생했을 때 EnableMenuItem을 호출하여 수동으로 활성화하려고했지만 아무 소용이 없습니다.MFC 메뉴 항목이 회색으로 유지됩니다.
도움을 주시면 감사하겠습니다.
내 프로젝트의 Document 클래스를 대상으로 처리하면 처리되는 것으로 나타났습니다. 이것은 쉬운 해결 방법입니다. 하지만 CDialogEx 클래스에서 왜 처리 할 수 없는지 궁금합니다. – Michen
'ON_UPDATE_COMMAND_UI' 핸들러가 호출 된 적이 있습니까? –
AFAIK, 대화 상자에 명령 처리기가 호출되지 않습니다. (https://support.microsoft.com/en-us/kb/242577 참조) – Max