Я делаю первые шаги в изучении wxWidgets. Я узнал, как назначать события для элементов меню или кнопок, например, потому что у них есть идентификаторы. Но когда я попытался назначить событие в Меню, мне было очень сложно.
Моя цель состояла в том, чтобы присвоить одному из этих верхних меню меню MenuBar конкретное событие, а не иметь список элементов меню. Сначала я не справился, пока не подумал об использовании:
Connect(wxEVT_MENU_OPEN, wxCommandEventHandler(MainFrame::Config));
Это отлично работало, пока я не понял, что это происходит со всеми меню! Это очевидно, так как нет места, где я указывал команду Connect для применения только для этого меню.
Любая помощь здесь? Я хотел бы, чтобы этот метод выполнялся только при нажатии на определенное меню, но не все! Спасибо заранее.
Предполагая, что вы хотите вызвать MainFrame :: Config, если элемент меню, созданный
yourMenu->Append(SOME_ID, wxT("&Configuration"));
получает щелчок, использует
this->Bind(wxEVT_COMMAND_MENU_SELECTED, &MainFrame::Config, this, SOME_ID);
если это ваш мэйнфрейм.