2015-05-27 25 views
1

目前,我正在學習開始WINAPI並已繼http://www.winprog.orgWINAPI AppendMenu LPCTSTR變量符號

教程在這個特定tutorial,存在使用AppendMenu創建子菜單的部分。

最後這個參數是一個LPCTSTR,據我所知不會被任何東西解釋,只是一個字符串,所以不應該是任何東西的地址。

AppendMenu(hMenu, MF_STRING | MF_POPUP, (UINT)hSubMenu, "&File"); 
                 ^

所以我想知道作者爲什麼包括&文本的菜單按鈕之前。
刪除&符號似乎對程序的功能沒有任何影響,但是因爲它沒有出現在顯示的字符串中,所以我假設它執行了某些操作。

所以問題是這&實際上是否提供了任何功能,如果是的話應該在什麼時候使用?

+1

&符號導致F被加下劃線。這也意味着Alt-F將激活這個菜單項。請參閱本文檔中的**菜單訪問鍵**標題:https://msdn.microsoft.com/en-us/library/windows/desktop/ms647553(v=vs.85).aspx – enhzflep

+0

@enhzflep謝謝,can我相信我沒有發現我自己!對於其他人,這是特別提到[這裏](https://msdn.microsoft.com/en-us/library/windows/desktop/ms647553(v = vs.85).aspx#_win32_Menu_Access_Keys) – 123

回答

2

&符號是menu access key的佔位符。下面的字母加下劃線,並且Windows可以設置爲總是顯示下劃線,或者當按下Alt鍵時。帶下劃線的字母是一個訪問鍵,所以當特定菜單打開時,您可以按下該鍵來激活菜單項。如果使用該訪問鍵的菜單項不止一個,按下該鍵將逐個選擇它們,但您必須按Enter才能激活所選菜單項。

+0

謝謝,正是我正在尋找:) – 123