哪个事件打开一个wxToolBar下拉菜单?

Which event to open a wxToolBar drop-down menu?

我正在使用带有下拉项的 wxToolBar:

g_toolBar1->AddTool(TOOLBAR_CMD_CONTROL_DROPDOWN,_("Control elements"),MainWin::getBitmap(gearsXPM,"gears"),wxNullBitmap,wxITEM_DROPDOWN);
custParent->Connect(TOOLBAR_CMD_CONTROL_DROPDOWN,wxEVT_COMMAND_TOOL_CLICKED,wxCommandEventHandler(DrawCanvasSwitcher::OnToolbar),NULL,g_drawCanvas);
.... // add items to controlMenu here
g_toolBar1->SetDropdownMenu(TOOLBAR_CMD_CONTROL_DROPDOWN,controlMenu);

当有人左键单击工具右侧的箭头时,下拉菜单会自动打开。但是我必须发送什么事件才能以编程方式打开下拉菜单?

谢谢!

您可以打开任何菜单,也可以通过调用 PopupMenu:

打开下拉菜单
bool wxWindow::PopupMenu (wxMenu*        menu,
                          const wxPoint& pos = wxDefaultPosition);

所以在你的情况下应该是:

yourWxWindow->PopupMenu(controlMenu);

或者当你已经在一个继承自 wxWindow 的 class 中时:

PopupMenu(controlMenu);