(1) 상황에 따라서 프로그램의 어떤 메뉴 항목은 활성화 되어야 할 때가
     있고, 다른 메뉴 항
은 비활성화 되어야 하는 경우가 있다. 

  1) 먼저, 임의로 메뉴를 생성한다.(COMMAND)
  2) 다음, 생성한 메뉴 항목에에서 UPDATE_COMMAND_UI 항목에 대한 핸들러 함수를 추
     가한다.
    UPDATE_COMMAND_UI : 이에 대한 핸들러를 생성하면 어떤 메뉴(명령)을 선택하더라
                                         도 해당 핸들러는 호출된다. COMMAND 핸들러 함수는 선택
                                          한 메뉴에 대한 함수만 호출하지만, UPDATE_COMMAND_
                                          UI 핸들러 함수는 이에 상관없이 모두 호출된다.
  3) 생성한 UPDATE_COMMAND_UI 핸들러 함수 내부에 pCmdUI->Eable(BOOL); 를 추가
     한다.
     pCmdUI->Enable(BOOL) : CCmdUI 클래스는 UPDATE_COMMAND_UI 핸들러 함수의
                                           인자로 전달받는 일에만 사용하는 클래스로 기본 클래스가
                                           없다. 용도는 메뉴가 어떤 스타일로 보일지는 변경하는 것이
                                           며, Enable() 함수는 해당 메뉴 항목을 활성화/비활성화 한
                                           다.
  4) BOOL 변수 값은 어떤 명령 or 조건에 의해서 변경될 것이고, 이 값이 TRUE가 되면 해
     해당되는 메뉴는 활성화, FALSE가 되면 비활성화 된다.


 (2) 메뉴 항목의 문자열 변경
    기본 환경은 위에 설명한 메뉴 항목 활성화/비활성화와 동일하며, Enable() 함수 대신에
    SetText(string)을 사용한다. 즉 STR1이 초기 메뉴 항목 문자열이고, STR2가 변경될 문자
    열이면
    pCmdUI->SetText(STR2);
    를 실행하면 메뉴 호출 시 메뉴 항목의 문자열이 변경된다.
    
신고

'프로그래밍 > MFC' 카테고리의 다른 글

파일 입출력  (0) 2010.04.09
각종 동작에 대한 MFC 메시지  (0) 2010.03.27
메뉴 항목의 활성화/비활성화  (0) 2010.03.20
ListControl  (0) 2010.03.19
SendMessage()와 PostMessage()  (0) 2010.03.15
[MFC]Event Handler(진행중...)  (0) 2010.02.17
Posted by 프네오오크고양이