DeleteMenu 関数 (winuser.h)

指定したメニューから項目を削除します。 メニュー項目がメニューまたはサブメニューを開いた場合、この関数はメニューまたはサブメニューへのハンドルを破棄し、メニューまたはサブメニューで使用されるメモリを解放します。

構文

BOOL DeleteMenu(
  [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 で導入)

関連項目

概念

DrawMenuBar

メニュー

リファレンス

RemoveMenu