本文主要是介绍2402,窗口的子类化.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我想知道win32/mfc/atl中的子类化.请提供相同的链接.微软建议你不要子类化控件类.窗口负责它提供的控件,且控件的各个方面可能不断变化.
如果应用必须子类化窗口提供的控件,则在发布新版本的窗口时,你可能需要更新该控件.
我想知道上述内容是否表明我无法子类化编辑控件,即使我已从CEdit继承子类,有人可更好地解释或扩展以下在以下语句?
全局子类与实例子类有相同的限制.
除非确切地知道原始窗口过程的用法,应用不应试为类或窗口实例使用额外的字节.如果数据必须与窗口关联,应与实例子类一样使用窗口的属性列表.
它与MFC窗口子类化没有关系,因为MFC不使用额外的字节.某些子类化方案使用额外字节来存储"this"指针,但MFC为此使用外部映射(用CWnd*关联HWND).
它意思是,通过指定WNDCLASS::cbClsExtra和cbWndExtra及通过GetClassLong[Ptr]和GetWindowLong[Ptr]访问来分配的所谓"额外字节".
用来附加与每个窗口或窗口类相关联的一些信息.即子类化窗口时,使用这些额外字节来存储你自己的一些信息可能很诱人,但应抵制该诱惑,否则会影响该窗口正常运行的期望数据.
请改用窗口属性(见GetProp和SetProp).本文并没有说不能子类化控件,而是说有一些技术障碍阻止你这样做.
它只是表明这不好.因为程序最终可能依赖特定控件的实现细节,
这篇关于2402,窗口的子类化.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!