VC中選單為何無法使用

時間 2022-07-24 06:00:08

1樓:匿名使用者

〉跟蹤發現,idr_mainmenu是正常的,值為101;但是makeintresource的結果卻是空字串,為什麼?

跟蹤makeintresource的結果是沒有意義的。因為它不指向字串。你可以用16進製制輸出他的值,肯定也是101.

定義他是串指標僅僅是為了loadmenu要求第二個引數必須是lpctstr型別。

〉.rc檔案製作完後需不需要再進行專門的鏈結?

如果是在vc的整合環境,rc檔案已經是專案的一部分,那麼連線的事情vc已經為你做了。如果rc檔案沒有加入到專案中去,那麼必須先加到專案中去。如果用cl命令編譯的程式,rc檔案必須另外編譯並連線起來。

〉vc++ 中選單為何無法使用

即使資源也連線了,如果不用mfc, 全用api, 僅僅loadmenu並不能確保使你的視窗和選單發生關聯。一般需採取以下方法之一:

1. 在資源檔案中將idr_mainmenu加進dialog中去。例如:

idd_mydialog dialogex 10,10,512,384

menu idr_mainmenu

....

這種方法最簡單。無需loadmenu和setmenu。

2. hmenu = loadmenu(hinstance, makeintresource(idr_mainmenu));

然後在createwindow或createwindowex中指定hmenu. (沒必要用int urmenu, 下同)

3. hmenu = loadmenu(hinstance, makeintresource(idr_mainmenu));

在createwindow或createwindowex中可使用null作menu引數, 然後再

呼叫setmenu()函式:

setmenu(hwin, hmenu);

4. 一般沒有人用,但是我覺得也可以:在建立視窗類時指定:

wndclass.lpszmenuname = makeintresource(idr_mainmenu);

這樣不必使用loadmenu, setmenu; 在createwindow或createwindowex中可使用null作menu引數。

最後一種我沒用過。有空的時候可以試試。

2樓:匿名使用者

hmenu hmainmenu = loadmenu(hinstance,urmenu);

這樣試一下!

c語言中選單裡switch語句裡形成迴圈輸入的問題(求高人解答)

嘿嘿,你不妨在你的程式中除錯一下看看,其實當從error呼叫menu的時候n好像被前面的東西賦值了吧 你可以採用一種方式就是在error函式中新增如下 就解決問題char tmp while tmp getchar n 我感覺錯誤是在你在error 中呼叫了menu 方法,這樣會構成乙個遞迴。建議的...

2012春晚為何無對聯,2011春晚對聯

怎麼會沒有,你肯定沒有仔細看吧!其實一共有四副。1東海湧春潮 鶯歌燕舞。中天輝麗日 虎躍龍騰。2西域起龍圖 呈祥獻瑞。中原聞鵲喜 祈福拜年。3南地響鞭炮 祈福迎新。中宵傳賀語 恭喜發財。4北國沐龍光 人和政善。中華開盛世 物阜民安。橫批我倒沒看到,就這些。1東海湧春潮 鶯歌燕舞。中天輝麗日 虎躍龍騰...

四料影帝突然去世,為何他一生竟無兒無女

四料影帝突然去世,為何他一生竟無兒無女?其實在很多情況之下,這些演員他們的表演天賦都是天生的,就比如像這個演員一樣,他天生的時候演員功底就非常好,而且後天的努力又非常認真,我覺得他在看電視劇集的時候,或者是在拍電影的時候都是一絲不苟的,哪怕是乙個細節都要拿捏的非常準確,這樣的話才能夠對得起自己的表演...