CWnd pWnd=CWnd::FindWindow(NULL,_T("EightPuzzle"));//获取目标窗口
pWnd->SendMessage(/消息的代号/,NULL,0);//发送消息
给你2个函数能够搞定不懂查msdn使用方法
BOOL GetCursorPos(
LPPOINT lpPoint
);
HWND WindowFromPoint(
POINT Point
);
补充一点,如果你是用静态分割产生的分割视图,可以充分利用CSplitterWnd的GetPane函数,比如,在CmylView中去获取CmyView的窗口句柄(假设CmyView在分割的0行0列):
CSplitterWnd ps = (CSplitterWnd )GetParent();
CmyView pView = (CmyView )(ps->GetPane(0,0));
pView - >m_hWnd即可获得该视图窗体的句柄
你在一个对话框CTransClientDlg里面获取前台窗口的目的是什么?
一般来说,使用CWnd类的GetForegroundWindow获取的是指向前台窗口(使用用户当前)的顶级窗口,你的对话框有这个窗口么?从w的信息看,好像是没有这样一个合理的窗口存在。
如果是后台程序,那么应该使用API函数来获取,而不是CWnd类函数,即:
HWND hw = ::GetForegroundWindow();
以上就是关于MFC 怎么在线程中获取当前子窗口的句柄(应用:基本对话框)全部的内容,包括:MFC 怎么在线程中获取当前子窗口的句柄(应用:基本对话框)、mfc单文档中如何获取鼠标当前窗口的句柄、mfc单文档中如何获取View视图(CmyView类实例产生的窗口)窗口的句柄等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)