共用方式為


ITfMenu::AddMenuItem 方法 (ctfutb.h)

將專案新增至功能表,該功能表會顯示按鈕的語言列。

語法

HRESULT AddMenuItem(
  [in] UINT        uId,
  [in] DWORD       dwFlags,
  [in] HBITMAP     hbmp,
  [in] HBITMAP     hbmpMask,
  [in] const WCHAR *pch,
  [in] ULONG       cch,
       ITfMenu     **ppMenu
);

參數

[in] uId

包含功能表項目識別碼。

[in] dwFlags

包含零或一或多個指定功能表項目類型和狀態 的 TF_LBMENUF_* 值組合。

[in] hbmp

包含針對功能表項目繪製之點陣圖的控制碼。 如果這是 Null,則功能表項目不會顯示任何點陣圖。

[in] hbmpMask

包含遮罩點陣圖的控制碼。 這是單色點陣圖,可作為 hbmp的遮罩。 此點陣圖中的每個黑色圖元都會使 hbmp 中的對應圖元以其一般色彩顯示。 此點陣圖中的每個白色圖元都會使 hbmp 中的對應圖元顯示在其一般色彩的反轉中。

若要讓點陣圖顯示而沒有任何色彩轉換,請建立與 hbmp 相同的單色點陣圖大小,並將每個圖元設定為黑色 (RGB (0, 0, 0) ) 。

如果 hbmpNull,則會忽略此參數。

[in] pch

WCHAR緩衝區的指標,其中包含要針對功能表項目顯示的文字。 文字的長度是由 cch指定。

[in] cch

指定pch中功能表項目文字的WCHAR長度。

ppMenu

[in, out]接收子功能表物件的 ITfMenu 介面指標指標指標。 不使用此參數,而且如果dwFlags不包含TF_LBMENUF_SUBMENU,則必須為Null

如果成功建立子功能表專案,此參數會收到呼叫端用來將專案加入子功能表的 ITfMenu 物件。

如果 dwFlags 包含 TF_LBMENUF_SUBMENU,則此值必須在呼叫此方法之前初始化為 Null ,因為在大多數情況下,這是封送的呼叫。 未初始化此變數會導致封送器嘗試存取隨機記憶體。

傳回值

這個方法可以傳回其中一個值。

描述
S_OK
此方法成功。
E_FAIL
發生未指定的錯誤。
E_OUTOFMEMORY
發生記憶體配置失敗。

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 ctfutb.h
Dll Msctf.dll
可轉散發套件 Windows 2000 專業版上的 TSF 1.0

另請參閱

ITfMenu

TF_LBMENUF_* 常數