下拉列表失效變灰的問題(收)

2021-04-27 15:34:34 字數 1174 閱讀 5533

我是在vs2005下的 vc ++  mfc的dialog建立的工程,  我的下拉列表為

返回    選單

開啟 關閉

我在選單「開啟」的command的命令函式裡寫了一下**:

cmenu* mmenu = getmenu();

cmenu* submenu = mmenu->getsubmenu(1);

submenu->enablemenuitem(id_menu_event_start, mf_byposition  | mf_disabled| mf_grayed);

想實現單擊「開啟」選單後,選單「開啟」變灰失效,這段**我在vc6.0裡除錯沒有問題,但是在vs2005裡,執行後,單擊「開啟」就出現問題,那位大俠做過類似的請給予指點,謝謝。

cytlyy:

shmenubarinfo mbi;

hwnd g_hwndmb;

zeromemory(&mbi, sizeof(shmenubarinfo));

mbi.cbsize = sizeof(shmenubarinfo);

mbi.hwndparent = m_hwnd;

mbi.n*******id = idr_menu1;

mbi.hinstres =afxgetinstancehandle();

mbi.dwflags |= shcmbf_hmenu;

shcreatemenubar(&mbi);

g_hwndmb = mbi.hwndmb;

tbbuttoninfo tbbi;

hmenu g_hmenu;

tbbi.cbsize = sizeof(tbbi);

tbbi.dwmask = tbif_lparam | tbif_byindex;

::sendmessage(g_hwndmb, tb_getbuttoninfo,0, (lparam)&tbbi);

g_hmenu = (hmenu)tbbi.lparam;

::enablemenuitem(g_hmenu,id_file_ok, mf_grayed);

//這樣是可以的。如果你的menu不是在初始化時變灰,就將g_hmenu定義為全域性變數然後在相應的地方呼叫::enablemenuitem(g_hmenu,id_file_ok, mf_grayed);

MFC中選單變灰的問題

mfc中選單變灰 方法1 有updatecmdui控制代碼時 定義乙個bool變數m b來標誌選單項是否有效,該選單項響應update command ui訊息,在訊息處理函式中pcmdui enable m b 以後你根據需要來設定m b的值,就可以使選單是否可用。在乙個函式中可以控制多個選單 方...

NGUI中使UITexture變灰的方法

在開發中經常會遇到變灰的情況。如下圖這樣 變亮的表示可用,變灰的表示不可用。一般這種情況的解決方案就是寫乙個變灰的shader。但如果是ngui的uitexture變灰會比較麻煩一些。那遇到這種需求要如何做呢?1.首先新建乙個變灰的shader,檔名起為 unlit transparent colo...

select 下拉列表相關的問題

一.下拉列表多選 例子 select 的multiple屬性可以設定該下拉框是多選或者單選。multiple multiple 以後,按住alt鍵就可以多選了。a b c d e f 二.下拉列表可選可編輯 自定義函式 showtotext 將列表項中的值傳遞給文字 function showtot...