MFC怎么创建一个带消息循环的线程!

qweewqpkn2010 2012-03-12 01:19:25
RT
...全文
402 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eleven 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 qweewqpkn2010 的回复:]
引用 5 楼 dnkuni 的回复:

引用 3 楼 qweewqpkn2010 的回复:

引用 1 楼 gameslq 的回复:

和windows sdk下消息循环一样

..线程开始
//开始消息循环
MSG msg;
while (GetMessage(&msg,NULL, 0, 0))
{
TranslateMessage(&a……
[/Quote]
创建UI线程,AfxBeginThread()
qweewqpkn2010 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 zf_prm 的回复:]

封装在
int CWinThread::Run()
这个函数里
[/Quote]

是回答的那个问题??? 将窗口与线程关联?
zf_prm 2012-03-12
  • 打赏
  • 举报
回复
封装在
int CWinThread::Run()
这个函数里
武汉元码科技 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dnkuni 的回复:]
MFC的话继承CWinThread,重载InitInstance()返回TRUE进入消息循环,
重载PumpMessage处理消息,PumpMessage返回FALSE退出程序。
[/Quote]

++
qweewqpkn2010 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dnkuni 的回复:]

引用 3 楼 qweewqpkn2010 的回复:

引用 1 楼 gameslq 的回复:

和windows sdk下消息循环一样

..线程开始
//开始消息循环
MSG msg;
while (GetMessage(&msg,NULL, 0, 0))
{
TranslateMessage(&msg);
Dispatc……
[/Quote]


恩,明白了很多了!感谢! 在问一下:我有3个窗口:A,B,C! A,B由UI线程负责,c由我创建的线程负责,怎么才能将C和这个线程关联起来呢??
Dnkuni 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 qweewqpkn2010 的回复:]

引用 1 楼 gameslq 的回复:

和windows sdk下消息循环一样

..线程开始
//开始消息循环
MSG msg;
while (GetMessage(&msg,NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
....线程结束
……
[/Quote]
每个线程有自己的消息队列,不会相互干扰的。
Dnkuni 2012-03-12
  • 打赏
  • 举报
回复
MFC的话继承CWinThread,重载InitInstance()返回TRUE进入消息循环,
重载PumpMessage处理消息,PumpMessage返回FALSE退出程序。
qweewqpkn2010 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 gameslq 的回复:]

和windows sdk下消息循环一样

..线程开始
//开始消息循环
MSG msg;
while (GetMessage(&msg,NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
....线程结束
[/Quote]


如果是这样,我的UI线程有消息循环,然后我又像你这样说的创建了一个带消息循环的线程,那么他们不是都要到消息队列中去获取消息,这样本来该UI处理的消息,会不会反而被我创建的这个线程给处理了呢???
Eleven 2012-03-12
  • 打赏
  • 举报
回复
线程中也可以使用PeekMessage(...,PM_REMOVE);
gameslq 2012-03-12
  • 打赏
  • 举报
回复
和windows sdk下消息循环一样

..线程开始
//开始消息循环
MSG msg;
while (GetMessage(&msg,NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
....线程结束

15,473

社区成员

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

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