基本介紹
- 中文名:AppendMenu
- 函式功能:該函式在指定的選單條
- 函式原型:BOOL AppendMenu
- 參數:hMenu
概述,函式功能,函式原型,參數,hMenu,UFlags,UIDNewltem,LpNewltem,MF_BITMAP(&H4&),MF_OWNERDRAW(&H100&),其它,可被設定在參數uFlags里的標誌,不能一起使用的標誌組,
概述
函式功能
該函式在指定的選單條、下拉式選單、子選單或快捷選單的末尾追加一個新選單項。此函式可指定選單項的內容、外觀和性能。函式AppendMenu己被lnsertMenultem取代。但如果不需要lnsertMenultem的擴展特性,仍可使用AppendMenu。
函式原型
BOOL AppendMenu(hMenu hMenu,UINT uFlags,UINT uIDNewltem,LPCTSTR lpNewltem);
參數
hMenu
將被修改的選單條、下拉式選單、子選單、或快捷選單的句柄。
UFlags
控制新選單項的外觀和性能的標誌。此參數可以是備註里所列值的組合。
UIDNewltem
指定新選單項的標識符,或者當uFlags設定為MF_POPUP時,表示下拉式選單或子選單的句柄。
LpNewltem
指定新選單項的內容。此參數的含義取決於參數uFlags是否包含MF_BITMAP, MF_OWNERDRAW或MF_STRING標誌,如下所示:
MF_BITMAP(&H4&)
含有點陣圖句柄。MF_STRING:以`\O’結束的字元串的指針。
MF_OWNERDRAW(&H100&)
含有被應用程式套用的32位值,可以保留與選單項有關的附加數據。當選單被創建或其外觀被修改時,此值在訊息WM_MEASUREITEM(&H2C)或WM_DRAWITEM(&H2B)的參數IParam指向的結構,成員itemData里。
備註:一旦選單被修改,無論它是否在顯示視窗里,應用程式必須調用函式DrawMenuBar。
為了使鍵盤加速鍵能控制位留或自己繪製的選單項,選單的擁有者必須處理WM_MENUCHAR訊息。
參見自繪製選單和WM_MENUCHAR訊息。
其它
可被設定在參數uFlags里的標誌
MF_BITMAP:將一個點陣圖用作選單項。參數lpNewltem里含有該點陣圖的句柄。
MF_CHECKED:在選單項旁邊放置一個選取標記。如果應用程式提供一個選取標記,點陣圖(參見SetMenultemBitmaps),則將選取標記點陣圖放置在選單項旁邊。
MF_DISABLED:使選單項無效,使該項不能被選擇,但不使選單項變灰。
MF_ENABLED:使選單項有效,使該項能被選擇,並使其從變灰的狀態恢復。
MF_GRAYED:使選單項無效並變灰,使其不能被選擇。
MF_MENUBARBREAK:對選單條的功能同MF_MENUBREAK標誌。對下拉式選單、子選單或快捷選單,新列和舊列被垂直線分開。
MF_MENUBREAK:將選單項放置於新行(對選單條),或新列(對下拉式選單、子選單或快捷選單)且無分割列。
MF_OWNERDRAW:指定該選單項為自繪製選單項。選單第一次顯示前,擁有選單的視窗接收一個WM_MEASUREITEM訊息來得到選單項的寬和高。然後,只要選單項被修改,都將傳送WM_DRAWITEM訊息給選單擁有者的視窗程式。
MF_POPUP:指定選單打開一個下拉式選單或子選單。參數uIDNewltem下拉式選單或子選單的句柄。此標誌用來給選單條、打開一個下拉式選單或於選單的選單項、子選單或快捷選單加一個名字。
MF_SEPARATOR:畫一條水平區分線。此標誌只被下拉式選單、子選單或快捷選單使用。此區分線不能被變灰、無效或加亮。參數IpNewltem和uIDNewltem無用。
MF_STRING:指定選單項是一個正文字元串;參數lpNewltem指向該字元串。
MF_UNCHECKED:不放置選取標記在選單項旁邊(預設)。如果應用程式提供一個選取標記點陣圖(參見SetMenultemBitmaps),則將選取標記點陣圖放置在選單項旁邊。
不能一起使用的標誌組
MF_DISABLED,MF_ENABLED和MF_GRAYED;MF_BITMAP,MF_STRING和MF_OWNERDRAW
MF_MENUBARBREAK和MF_MENUBREAK;MF_CHECKED和MF_UNCHECKED
Windows CE環境下,不支持參數fuFlags使用下列標誌:
MF_BITMAP;MF_DOSABLE;MF_GRAYED
MF_GRAYED可用來代替MF_DISABLED和MFS_GRAYED。
Windows CE 1.0不支持層疊式選單。在使用Windows CE 1.0時,不能將一個MF_POPUP選單插入到另一個下拉式選單中。Window CE 1.0不支持下列標誌:
MF_POPUP;MF_MENUBREAK;MF_MENUBARBREAK
Windows CE 2.0或更高版本中,支持上述標誌,也支持層疊式選單。