在 MFC 中,CWinThread 类有一个公共方法叫做 GetMainWnd,用于获取与线程关联的主窗口指针。这个方法通常用于获取主窗口的指针,以便在线程中进行相关的操作。

以下是一个简单的示例:
// 假设你的应用程序类为 CMyApp,线程类为 CMyThread
#include "CMyApp.h"
#include "CMyThread.h"

BOOL CMyApp::InitInstance()
{
    // 创建并运行新线程
    CMyThread* pThread = (CMyThread*)AfxBeginThread(RUNTIME_CLASS(CMyThread));

    // 其他初始化工作...

    return TRUE;
}

BOOL CMyThread::InitInstance()
{
    // 在线程初始化时获取主窗口指针
    CMainFrame* pMainFrame = (CMainFrame*)AfxGetMainWnd();

    // 执行其他线程初始化操作...

    return CWinThread::InitInstance();
}

在上述代码中,AfxGetMainWnd 函数用于获取主窗口的指针,这个函数在 MFC 中经常用于获取主窗口的指针。在线程的 InitInstance 方法中,你可以调用 AfxGetMainWnd 来获取主窗口的指针,然后进行其他与线程初始化相关的操作。

请注意,这只是一个简单的示例,实际的应用可能需要根据具体情况进行调整。


转载请注明出处:http://www.zyzy.cn/article/detail/23225/MFC/CWinThread