-
-
[求助]MFC中关于窗口对象,窗口资源,子类化窗口,附加窗口的一些疑惑???
-
发表于: 2021-3-20 12:04 3018
-
近期在学习wtl编程,在看别人的代码是,好几处出现窗口对象,窗口资源,子类化窗口,附加窗口的操作,感觉很绕,理不清楚逻辑关系。
基本的代码逻辑如下
CWindow A { enum { IDD = IDD_MAINDLG };// IDD_MAINDLG是窗口资源 init(); CWindow B; } init() { B.SubclassWindow(m_hWnd);//将A的成员m_hWnd作为参数执行B的SubclassWindow函数 }首先是窗口对象和窗口资源的关系,基本操作是利用IDD关联窗口资源和窗口对象:
enum { IDD = IDD_MAINDLG };
然后是关于子类化窗口和附加窗口的理解,msdn上关于子类化窗口的说明如下:
基本意思就是调用CWindow对象的subclasswindow函数将该对象和给定的窗口关联在一起(这里有点理解不太彻底)。
然后又去百度了一下,看了这篇文章https://blog.csdn.net/rankun1/article/details/50622444和https://www.itdaan.com/blog/2009/08/24/9364c297d9adec294d1c1a59d7e4931b.html感觉还是有点迷糊。
我现在有点想不通的是,窗口对象A已经和窗口资源进行关联,再使用A的成员变量窗口对象B子类化窗口A,是不是可以理解为窗口B和窗口A的m_hWnd都指向同一个窗口,它们都可以操纵和改变同一个窗口(换句话说,就是两个窗口对象可以附加到同一个窗口资源上???)
赞赏
他的文章
看原图
赞赏
雪币:
留言: