wxWidgets에서 GUI 어플리케이션을 개발할때, 메뉴를 추가하는건 다음을 필요로한다.

 

 1. 메뉴바 생성.

    wxMenuBar* menuBar = new wxMenuBar;
    menuBar->Append(menuFile, "&File");

 

 wxWidgets에서 지원해주는 클래스로 wxMenuBar라는 클래스가 있다. 이 클래스는 윈도우 상단에 위치하는 메뉴바를 나타내는 것으로 여기서 메뉴의 항목이라는 부분이 있게 된다.

 

 윈도우의 'F'를 단축키를 가지는 'File'이라는 메뉴를 추가 할 수 있게 된다.

 여기서 하위 메뉴를 추가하고자한다면, 다음과 같은 작업을 하면된다.

    wxMenu* menuFile = new wxMenu;
    menuFile->Append(ID_QUIT, "E&xit\tAlt-X", "프로그램 종료");

 

이것을 메뉴를 추가를 이상없이 적용하고 위해선 다음과 같이 한다.

    SetMenuBar(menuBar);

 

 이렇게 하면, 윈도우에 적용하게 된다.

 

 각 메뉴에 대해서 이벤트를 처리하는 방법은 다음과 같다.

 

    // 이벤트 핸들러 연결
    Bind(wxEVT_MENU, &MyFrame::OnQuit, this, ID_QUIT);

 

 wxEVT_MENU라는 것은 MENU에 대한 이벤트를 적용하는 것이 있다.

 MyFrame::OnQuit라는 클래스의 메소드를 바로 연결해서 이벤트 처리하는 기능을 넣을 수 있다.

Posted by JunkMam
,