EnableWindow 関数 (winuser.h)

指定したウィンドウまたはコントロールへのマウスとキーボードの入力を有効または無効にします。 入力を無効にすると、マウスクリックやキー押しなどの入力がウィンドウに表示されません。 入力が有効になっている場合、ウィンドウはすべての入力を受け取ります。

構文

BOOL EnableWindow(
  [in] HWND hWnd,
  [in] BOOL bEnable
);

パラメーター

[in] hWnd

型: HWND

有効または無効にするウィンドウへのハンドル。

[in] bEnable

型: BOOL

ウィンドウを有効または無効にするかどうかを示します。 このパラメーターが TRUE の場合、ウィンドウは有効になります。 パラメーターが FALSE の場合、ウィンドウは無効になります。

戻り値

型: BOOL

ウィンドウが以前に無効になっていた場合、戻り値は 0 以外です。

ウィンドウが以前に無効にされていない場合、戻り値は 0 です。

注釈

ウィンドウが無効になっている場合、システムは WM_CANCELMODE メッセージを送信します。 ウィンドウの有効な状態が変更されている場合、システムは WM_CANCELMODE メッセージの後に WM_ENABLE メッセージを送信します。 (これらのメッセージは 、EnableWindow が返される前に送信されます)。ウィンドウが既に無効になっている場合、その子ウィンドウは暗黙的に無効になりますが、 WM_ENABLE メッセージは送信されません。

アクティブ化する前に、ウィンドウを有効にする必要があります。 たとえば、アプリケーションがモードレス ダイアログ ボックスを表示していて、メイン ウィンドウを無効にしている場合、アプリケーションはダイアログ ボックスを破棄する前にメイン ウィンドウを有効にする必要があります。 それ以外の場合は、別のウィンドウがキーボード フォーカスを受け取り、アクティブになります。 子ウィンドウが無効になっている場合、どのウィンドウがマウス メッセージを受信するかをシステムが判断しようとしたときに無視されます。

既定では、ウィンドウは作成時に有効になります。 最初に無効になっているウィンドウを作成するには、アプリケーションで CreateWindow または CreateWindowEx 関数でWS_DISABLEDスタイルを指定できます。 ウィンドウが作成されたら、アプリケーションで EnableWindow を 使用して、ウィンドウを有効または無効にすることができます。

アプリケーションは、この関数を使用して、ダイアログ ボックス内のコントロールを有効または無効にすることができます。 無効になっているコントロールは、キーボード フォーカスを受け取ることも、ユーザーがキーボード フォーカスにアクセスすることもできません。

要件

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

こちらもご覧ください

概念

CreateWindow

CreateWindowEx

IsWindowEnabled

キーボード入力

リファレンス

WM_ENABLE