DefSubclassProc 関数 (commctrl.h)

ウィンドウのサブクラス チェーンで次のハンドラーを呼び出します。 サブクラス チェーンの最後のハンドラーは、ウィンドウの元のウィンドウ プロシージャを呼び出します。

構文

LRESULT DefSubclassProc(
  [in] HWND   hWnd,
  [in] UINT   uMsg,
  [in] WPARAM wParam,
  [in] LPARAM lParam
);

パラメーター

[in] hWnd

型: HWND

サブクラス化されるウィンドウへのハンドル。

[in] uMsg

型: UINT

ウィンドウ メッセージを指定する unsigned int 型の値。

[in] wParam

型: WPARAM

追加のメッセージ情報を指定します。 このパラメーターの内容は、ウィンドウ メッセージの値によって異なります。

[in] lParam

型: LPARAM

追加のメッセージ情報を指定します。 このパラメーターの内容は、ウィンドウ メッセージの値によって異なります。 注: 64 ビット バージョンの Windows LPARAM では、64 ビット値です。

戻り値

型: LRESULT

返される値は、送信されたメッセージに固有です。 この値は無視する必要があります。

注釈

既定のウィンドウ プロシージャを呼び出す必要はありません。この関数は、それを自動的に呼び出します。

SUBCLASS モジュールは、ウィンドウのサブクラス化に使用されるヘルパー関数を定義します。 このコードでは、サブクラス化されたウィンドウで 1 つのプロパティを保持し、必要に応じてさまざまなサブクラス コールバックをクライアントにディスパッチします。 クライアントには、参照データと既定の処理 API が用意されています。

サブクラス コールバックは、コールバック関数ポインターと符号なし ID 値の一意のペアリングによって識別されます。 各コールバックは、メッセージをフィルター処理するために呼び出されたときにコールバック関数に渡される参照データの 1 つの DWORD を格納することもできます。 コールバックの参照カウントは実行されません。 SetWindowSubclass を繰り返し呼び出して、参照データ要素の値を変更できます。

警告 サブクラス化ヘルパー関数を使用して、スレッド間でウィンドウをサブクラス化することはできません。
 

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー commctrl.h
Library Comctl32.lib
[DLL] Comctl32.dll (バージョン 5.8 以降)
API セット ext-ms-win-shell-comctl32-window-l1-1-0 (Windows 10 バージョン 10.0.14393 で導入)

こちらもご覧ください

GetWindowSubclass

RemoveWindowSubclass

SetWindowSubclass