RemoveMenu 関数 (winuser.h)

メニュー項目を削除するか、指定したメニューからサブメニューをデタッチします。 メニュー項目でドロップダウン メニューまたはサブメニューが開いた場合、 RemoveMenu はメニューまたはそのハンドルを破棄せず、メニューを再利用できます。 この関数が呼び出される前に、 GetSubMenu 関数はドロップダウン メニューまたはサブメニューへのハンドルを取得する必要があります。

構文

BOOL RemoveMenu(
  [in] HMENU hMenu,
  [in] UINT  uPosition,
  [in] UINT  uFlags
);

パラメーター

[in] hMenu

種類: HMENU

変更するメニューへのハンドル。

[in] uPosition

型: UINT

uFlags パラメーターによって決定される、削除するメニュー項目。

[in] uFlags

型: UINT

uPosition パラメーターの解釈方法を示します。 このパラメーターには次のいずれかの値を指定する必要があります。

意味
MF_BYCOMMAND
0x000000000L
uPosition がメニュー項目の識別子を指定することを示します。 MF_BYCOMMANDフラグもMF_BYPOSITIONフラグも指定されていない場合は、MF_BYCOMMANDフラグがデフォルトフラグになります。
MF_BYPOSITION
0x00000400L
uPosition がメニュー項目の 0 から始まる相対位置を指定することを示します。

戻り値

種類: BOOL

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

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

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

要件

要件
サポートされている最小のクライアント 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で導入)

関連項目

概念

CreatePopupMenu

DeleteMenu

DrawMenuBar

GetSubMenu

メニュー

参照