如何建立右鍵彈出選單 即ContextMenu

2021-05-22 11:43:23 字數 709 閱讀 7504

在visual studio 2005環境中,在「資源檢視」新建乙個「menu」資源id為idr_contextmenu,然後編輯你的選單資源,假如設計的選單欄結構如下:

menuitem1      menuitem2        menuitem3

--subitem1a      --subitem2a       --subitem3a

--subitem1b      --subitem2b       --subitem3b

我需要獲取menuitem2的popupmenu(即子選單)作為contextmenu,則應該怎麼做呢?

接下來本人講述兩種建立右鍵彈出選單的方法:

一、建立乙個「滑鼠右鍵按下」的系統訊息wm_rbuttondown,在其訊息處理函式中新增如下**:

在存在「系統選單欄」的對話方塊應用程式中,建議用這乙個方法,因為此時你可以在對話方塊client區右鍵則彈出自定義的contextmenu

如此例彈出:|subitem2a|

|subitem2b|

而在標題欄處右鍵則會彈出「系統選單欄」。

二、建立乙個"contextmenu"的系統訊息「wm_contextmenu」,在其訊息處理函式中新增如下**:

此方法則會遮蔽掉自帶的標題欄上右鍵觸發的「系統選單欄」,即在標題欄上右鍵彈出的選單欄也是自定義的contextmenu即彈出:|subitem2a|

|subitem2b|

右鍵彈出選單

演算法 第一步 增加元件 元件和控制項 project add to project components and controls 選擇 vc components 裡面的pop up menu 選擇 cmenuview 下面的 cg idr popup menu view 這個是id號,你可以修...

製作右鍵彈出選單

1.新建乙個選單資源 idr menu pop 2.新增選單項 3.彈出右鍵選單 cmenu menu menu.loadmenu idr menu pop cmenu psubmenu menu.getsubmenu 0 0表示是載入idr menu pop的第一列選單 cpoint pt get...

QT 右鍵彈出選單

qwidget及其子類都可有右鍵選單 1.設定標誌 在widget初始化的時候 setcontextmenupolicy qt customcontextmenu 設定為自定義選單模式 2.在需要的地方進行訊號關聯 connect mbrowserview,civdatasourcetreeview...