1. 程式人生 > >MFC中動態新增選單項是灰色的解決辦法

MFC中動態新增選單項是灰色的解決辦法

呈現灰色的原因是沒有對應的訊息響應函式與選單相關聯,只需要自己寫一個訊息響應函式即可,例如孫鑫的VC++教程第六章有相關動態新增選單的教程,但是此教程在使用動態新增選單項之後並沒有對選單項是灰色的進行說明,話不多說程式碼如下,初學者可以看看:

GetMenu()->GetSubMenu(0)->AppendMenu(MF_STRING,114,"wo cao ni da ye");

這是原孫鑫老師教程中動態新增選單項的程式碼,這樣雙引號裡的內容顯示時是灰色的。

解決辦法,在類的標頭檔案裡新增afx_msg void OnShowDaye();,然後在類的實現裡寫函式的實現,

void OnShowDaye()

{

MessageBox("wo shi da ye");

}

在訊息響應佇列中新增

ON_COMMAND(114,OnShowDaye);

然後再編譯執行原來孫鑫教程裡面的menu2例子,就可以了

相關推薦

MFC動態增選單項灰色解決辦法

呈現灰色的原因是沒有對應的訊息響應函式與選單相關聯,只需要自己寫一個訊息響應函式即可,例如孫鑫的VC++教程第六章有相關動態新增選單的教程,但是此教程在使用動態新增選單項之後並沒有對選單項是灰色的進行說明,話不多說程式碼如下,初學者可以看看: GetMenu()->G

MFC動態增選單項和響應選單事件

新建一個單文件程式 在檢視選單項中增加兩個子選單,分別為隱藏工具欄(ID_HIDE),新建選單(ID_NEWMENU) 在Resource.h中增加一個ID_NEWMENU巨集 #define ID_NEWMENU        WM_USER+101 操作工具

如何向系統選單動態增選單項

1、什麼是系統選單? 所謂系統選單就是指你在應用程式標題欄上滑鼠右鍵操作時彈出的選單,如下圖所示: 2、如何在系統選單中動態新增選單項 // 修改系統選單 CMenu* system_menu; system_menu = pFrm->GetSystemMenu(fal

ASP.net Menu控制元件動態增選單項實現許可權控制

      對於動態選單生成,在很多具有許可權控制的專案中非常常見。最近遇到一個需求就是不同使用者具有不同許可權,該許可權是頁面級的,所以需要根據不同使用者的許可權情況動態生成選單項。        首先,我把選單項中的內容先儲存在一個XML裡面,在載入模板頁時只需根據查詢

VS2010動態增選單項

在VC6.0和VS2010裡面動態新增選單項是不一樣的,檢視MSDN文件可知,VS2010採用的是MFC9.0版,其中有很多新增的項具體資訊請檢視http://msdn.microsoft.com/en-us/library/ws8s10w4.aspx,本文就根據自己的測試詳細的比較一下二者的區別: 1.在

MFCOnTimer不被執行的解決辦法

    被這個問題困擾了一天,百度以及向大神請教都沒有結果,經過自己不斷嘗試和琢磨,終於找到原因並解決了問題,特寫下來供大家參考。問題描述:     在MFC中,使用setTimer來觸發OnTimer,但是執行程式並打斷點之後發現,OnTimer並沒有被執行。確認計時器的使

CentOS 7增選單項

我們使用yum安裝或者手工安裝帶介面的第三方軟體後,通常都會在應用程式Application下出現一個選單項圖示,並且被分門別類的管理。這些應用軟體可以出現在搜尋的介面中。 但是,有些軟體比如我們編譯安裝mplayer後,該軟體不會為我們生成應用程式的圖示。

MFC動態陣列CArray的使用

MFC中動態陣列CArray的使用 陣列——這個C語言中的怪物,自從被直接繼承到C++中,便讓無數有識之士們前赴後繼、絞盡腦汁,試圖尋找一種可以動態增長的替代資料型別。當然,最著名的,應該就是vector向量。但是,它的資料定義極其複雜,還有迭代的出現,幾乎徹底摧毀了它

MFC動態獲取/設定按鈕的文字

(1) 獲取按鈕控制元件的文字:  CString tempstr; // 獲取ID為ID_BUTTON_1按鈕的文字內容 GetDlgItem(ID_BUTTON_1)->GetWindowText(tempstr); (2) 設定按鈕控制元件的文字: GetD

C# DataGridView單元格動態增多個控制元件

簡介:          在DataGridView的單元格中動態新增多個控制元件。例如在DataGridViewTextBox單元格中,新增CheckBox和Button控制元件。主題思路就是一個動態控制元件的大小,位置,顯示,事件設定,和平常

Android 8.1 增選單項

由於工作的原因,許多時間我們需要定製自己的Settings,需要對Settings中的選單項進行增加和刪除。 1.增加選單項 第一,首先在AndroidManifest.xml中新增activity 其具體屬性的解析如下: 第二,在包com.and

在基於對話方塊MFC動態的新增對話方塊

        在Dialog類中新增兩個私有成員變數m_imagelist,m_toolbar,型別如下CImageList,CToolBar      在OnInitDlalog方法中新增如下程式

IAR的Go to definition of灰色解決辦法

一般IAR預設是不可以能過右鍵直接查詢變數、函式的定義的。     你選中一個函式名在上面點右鍵發現“Go to definition of ……”是灰色的,無法找到函式的定義處。但是,IAR是支援快速查詢變數、型別、函式甚至是巨集定義功能的。我用的是IAR 7.2

MFC程式動態連結庫缺失的解決方法

      我們在用VS2010編寫MFC程式的時候,我們有時候會發現自己寫的程式在別人的電腦上執行時會報錯,說是動態連結庫的丟失.比如說“缺少mfc100d.dll檔案”。解決方法如下:    1:點選VS2010的專案->屬性->配置屬性->常規;

vue類名和組件經過刷不對應的解決辦法

解決 技術 解決辦法 com 分享 ive cti 類名 img 頁面路由如下: index.js路由文件如下: HTML頁面設置active如下: 解決了刷新頁面active和組件不對應的問題。 vue中類名和組件經過刷新不對應的解決辦法

在已有的檢視的彈出選單上增選單項

plugin.xml   <extension         point="org.eclipse.ui.viewActions">      <viewContribution            id="cn.hrzsoft.workflow.jbp

FORMS進階之——增選單項實現相關功能

1.在FORM級觸發器新增自定義觸發器:SPECIAL1 2.初始化選單,在FORM級觸發器:WHEN-NEW-FORM-INSTANCE: fnd_message.set_name('CUX','CUX_OM_SUBMIT_ORDER_MENU');l_menu1

JS 調試常見的報錯的解決辦法

是否 asp success ted json字符串 clas 使用 crud 識別 報錯:Uncaught SyntaxError: Unexpected token o in JSON at position 1 at JSON.parse (<anonymou

項目遇到的某些問題及解決辦法(一)

sql () 輸入 包含 查看 定位 管理器 顯示 分布式開發 簡介 該博文記錄了一些平時在工作中遇到的問題及解決辦法,某些問題有解決辦法,某些問題暫時沒有解決辦法,如果有大神知道的,請多多指點。 如果某些問題有更好的解決辦法,也請指教。 正文 1、在一個方

ORA-01950: 表空間'USERS'無權限的2種解決辦法

text tro 表空間 ant 解決 style str spa -s 總的來說這個錯誤是由於對表空間操作的權限不足造成的,所以這個時候就可以檢查出錯之前對於所操作的表賦權grant connect,resource to zhangbojie ; ORA-01950: