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 模块定义用于子类窗口的帮助程序函数。 代码维护子类窗口上的单个属性,并根据需要将各种子类回调调度到其客户端。 客户端提供参考数据和默认处理 API。

子类回调由回调函数指针和无符号 ID 值的唯一配对标识。 每个回调还可以存储引用数据的单个 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