GetSystemMenu 関数 (winuser.h)

コピーおよび変更のために、アプリケーションがウィンドウ メニュー (システム メニューまたはコントロール メニューとも呼ばれます) にアクセスできるようにします。

構文

HMENU GetSystemMenu(
  [in] HWND hWnd,
  [in] BOOL bRevert
);

パラメーター

[in] hWnd

型: HWND

ウィンドウ メニューのコピーを所有するウィンドウへのハンドル。

[in] bRevert

種類: BOOL

実行するアクション。 このパラメーターが FALSE の場合、 GetSystemMenu は現在使用中のウィンドウ メニューのコピーへのハンドルを返します。 コピーは最初はウィンドウ メニューと同じですが、変更できます。 このパラメーターが TRUE の場合、 GetSystemMenu はウィンドウ メニューを既定の状態にリセットします。 前のウィンドウ メニューがある場合は破棄されます。

戻り値

種類: HMENU

bRevert パラメーターが FALSE の場合、戻り値はウィンドウ メニューのコピーへのハンドルです。 bRevert パラメーターが TRUE の場合、戻り値は NULL です

注釈

GetSystemMenu 関数を使用してウィンドウ メニューの独自のコピーを作成しないウィンドウは、標準のウィンドウ メニューを受け取ります。

ウィンドウ メニューには、最初は、 SC_CLOSE、SC_MOVESC_SIZEなど、さまざまな識別子値を持つ項目が含 まれます

ウィンドウ メニューのメニュー項目は 、WM_SYSCOMMANDメッセージを 送信します。

定義済みのウィンドウ メニュー項目はすべて、0xF000より大きい識別子番号を持っています。 アプリケーションがウィンドウ メニューにコマンドを追加する場合は、0xF000未満の識別子番号を使用する必要があります。

状況に応じて、標準ウィンドウメニューの項目が自動的にグレー表示されます。 アプリケーションは、メニューが表示される前に送信される WM_INITMENU メッセージに応答することで、独自のチェックまたはグレー表示を実行できます。

要件

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

関連項目

概念

GetMenu

InsertMenuItem

メニュー

リファレンス

SetMenuItemInfo

WM_INITMENU

WM_SYSCOMMAND