次の方法で共有


SetMenuItemInfoA 関数 (winuser.h)

メニュー項目に関する情報を変更します。

構文

BOOL SetMenuItemInfoA(
  [in] HMENU            hmenu,
  [in] UINT             item,
       BOOL             fByPositon,
  [in] LPCMENUITEMINFOA lpmii
);

パラメーター

[in] hmenu

種類: HMENU

メニュー項目を含むメニューへのハンドル。

[in] item

型: UINT

変更するメニュー項目の識別子または位置。 このパラメーターの意味は 、fByPosition の値によって異なります。

fByPositon

[in] lpmii

種類: LPMENUITEMINFO

メニュー項目に関する情報を含み、変更するメニュー項目属性を指定する MENUITEMINFO 構造体へのポインター。

戻り値

種類: BOOL

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 拡張エラー情報を取得するには、 GetLastError 関数を使用します。

注釈

アプリケーションは、メニューが表示されているウィンドウ内にあるかどうかに関係なく、メニューが変更されるたびに DrawMenuBar 関数を呼び出す必要があります。

キーボード アクセラレータがビットマップまたは所有者が描画したメニュー項目を操作するには、メニューの所有者が WM_MENUCHAR メッセージを処理する必要があります。 詳細については、「 所有者描画メニュー」と「WM_MENUCHAR メッセージ 」を参照してください。

例については、「 メニュー項目の Owner-Drawn 例」を参照してください。

注意

winuser.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetMenuItemInfo を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll
API セット ext-ms-win-ntuser-menu-l1-1-0 (Windows 8 で導入)

関連項目

概念

DrawMenuBar

GetMenuItemInfo

MENUITEMINFO

メニュー

参照