2013-01-23 29 views
0

我有一個wxListCtrl,我想使它這樣,當用戶對上一個項目點擊顯示一個文本菜單/彈出wxWidgets的文本菜單/彈出

我該如何使用wxFormBuilder或以編程方式做到這一點?

乾杯。

回答

1

你需要捕捉wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK型或wxEVT_CONTEXT_MENU的事件(更普遍,感謝vadz),然後彈出一個wxMenu

一個例子可以在wxListCtrl示例中看到,它可以在wxdir\samples\listctrl中找到。從樣品修改的一小段應該給你正確的觀念:

void MyListCtrl::OnRightClick(wxListEvent& event) 
{ 
    // Show popupmenu at position 
    wxMenu menu(wxT("Test")); 
    menu.Append(LIST_ABOUT, wxT("&About")); 
    PopupMenu(&menu, event.GetPoint()); 
} 
+0

這工作,但您可能更願意使用'wxEVT_CONTEXT_MENU'清楚和,因爲它適用於多種窗口,而不僅僅是'wxListCtrl'。 –