您的位置:首页 > 其它

Windows 窗口子类化和超类化

2011-10-12 17:33 295 查看
子类化(Subclass)是指替换窗口过程(WNDPROC)

超类(Superclass)是替换窗口过程(WNDPROC),并且替换ClassName。

Subclass不太像继承,而像一种外挂(HOOK)行为。

Superclass更像继承,因为生成了新的窗口类,并且继承了行为。

WinX中Subclass和Superclass用同一个类实现,都是 WinX::SubclassWindow。

关于用法上:

以Button为例,如果是SubClass,那么用户先要有一个Button,然后Subclass它。

也就是Subclass发生在CreateWindow之后。

如果是Superclass,那么用户CreateWindow时直接传入新的窗口类名称,根本没有Button被生成。

当然,这要求CreateWindow之前调用该窗口类的RegisterClass

MFC是子类化技术
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: