一个我觉得有点奇怪的问题,请帮我看看,不是很难

cai12345 2003-09-29 05:32:13
HANDLE handle;
class aa
{
private:
DWORD ID;
HWND hwnd;
static WinProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
static DWORD WINAPI MsgLoop(LPVOID lpParam)
{
MSG msg;
while(GetMessage(&msg,hwnd,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}

public:
aa()
{
hwnd=createwindow(...); //使用WinProc,并把window显示出来
handle=CreateThread(NULL,0,MsgLoop,NULL,0,&ID);
}
}

winmain(..)
{
aa jjj;
WaitForSingleObject(handle,INFINITE);//把这句写成for(;;);也不能响应
}
窗口可以显示,可是没有响应,我试了一下,好像MsgLoop根本没有执行,不知为何
...全文
25 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxm521b 2003-09-29
  • 打赏
  • 举报
回复
窗口在主线程创建,而消息环在子线程中运行,怎么响应?

15,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧