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

メニュー項目の種類と状態を指定する 1 つ以上の TF_LBMENUF_* 値の 0 または組み合わせを含みます。

[in] hbmp

メニュー項目に描画されるビットマップのハンドルを格納します。 これが NULL の場合、メニュー項目のビットマップは表示されません。

[in] hbmpMask

マスク ビットマップのハンドルを格納します。 これは、 hbmp のマスクとして機能するモノクロ ビットマップです。 このビットマップ内の各黒いピクセルは、 hbmp の対応するピクセルを通常の色で表示します。 このビットマップ内の各白いピクセルは、 hbmp の対応するピクセルを通常の色の逆で表示します。

色変換なしでビットマップを表示するには、 hbmp と同じサイズのモノクロ ビットマップを作成し、各ピクセルを黒 (RGB(0, 0, 0)) に設定します。

hbmpNULL の場合、このパラメーターは無視されます。

[in] pch

メニュー項目に表示するテキストを含む WCHAR バッファーへのポインター。 テキストの長さは cch で指定します。

[in] cch

pch のメニュー項目テキストの長さを WCHAR で指定します。

ppMenu

[入力、出力]サブメニュー オブジェクトを受け取る ITfMenu インターフェイス ポインターへのポインター。 dwFlagsTF_LBMENUF_SUBMENUが含まれていない場合、このパラメーターは使用されず、NULL にする必要があります。

サブメニュー項目が正常に作成されると、このパラメーターは、呼び出し元がサブメニューに項目を追加するために使用する ITfMenu オブジェクトを受け取ります。

dwFlagsTF_LBMENUF_SUBMENUが含まれている場合は、このメソッドを呼び出す前にこの値を NULL に初期化する必要があります。ほとんどの場合、これはマーシャリングされた呼び出しであるためです。 この変数を初期化しないと、マーシャラーはランダム メモリにアクセスしようとします。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

説明
S_OK
メソッドは正常に実行されました。
E_FAIL
未指定のエラーが発生しました。
E_OUTOFMEMORY
メモリ割り当てエラーが発生しました。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー ctfutb.h
[DLL] Msctf.dll
再頒布可能パッケージ Windows 2000 Professional 上の TSF 1.0

関連項目

ITfMenu

TF_LBMENUF_* 定数