首先是利用MFC的一个全局函数
AfxgetApp(),来得到程序自身的一个指针
解析如下:
CWinApp*
AfxGetApp();
返回值:指向应用程序的单一CWinApp对象的指针
然
后用到的CWinApp类中的一个属性(继承自CWinThread类):
CWinThread::m_pMainWnd
说明:
使
用这个数据成员来保存你的线程的主窗口对象的指针。当m_pMainWnd所代表的窗口被关闭时,微软基础类库将自动终止线程。如果该线程是应用程序的主
线程,则应用程序将结束。如果这个数据成员为NULL,则应用程序的CWinApp对象的主窗口将被用来确定什么时候终止线程。m_pMainWnd是CWnd*类型
的公有变量。
通常,你在重载
InitInstance的时候设置这个成员变量。在工作者线程中,这个数据成员的值是从它的父线程继承的
再次就可以用到CWIN
的一个公共变量::m_hWnd
来获得句柄了
整合到
一起就是
HWND hwnd=AfxGetApp()->m_pMainWnd->m_hWnd;
mfc 中获得本身程序句柄的代码
最新推荐文章于 2025-09-22 20:38:34 发布
本文详细解释了如何使用MFC全局函数AfxgetApp()获取应用程序的窗口指针,以及如何通过CWinApp类的属性CWinThread::m_pMainWnd和m_hWnd来操作窗口句柄。
217

被折叠的 条评论
为什么被折叠?



