请问MFC中PostMessage()在此有啥作用呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问MFC中PostMessage()在此有啥作用呢?相关的知识,希望对你有一定的参考价值。

我是一个初学都,想请教一个在下面的线程代码中,PostMessage这个有什么作用呢?谢谢啊!!
UINT TreadProc(LPVOID param)


CThreadTestApp *pApp=(CThreadTestApp *) AfxGetApp();
CMainFrame *pMainFrame = (CMainFrame *)pApp->GetMainWnd();
CThreadTestView *pView = (CThreadTestView *) pMainFrame->GetActiveView();
pView->m_strMessage = “启动了一个线程” ;
while(threadController)

::Sleep(1000);
::PostMessage((HWND)param, WM_THREAD_SENDMESS, 0, 0);

pView->m_iTime =0;
pView->m_strMessage = “线程结束”;
return 0;

PostMessage是用来向窗口发送消息的,以便通知指定窗口需要做出相应的动作,与SendMessage不同的是,PostMessage并不保证消息已经发给了指定窗口,而SendMessage能保证消息发送成功。

你问题中的“在此”没有明确是何含义,不好回答。
参考技术A 将消息投递到消息队列,然后立即返回。 参考技术B 这是工作者线程,它的工作想通过窗口来显示,采用调用窗口函数的方法来显示信息是低效的,所以用发消息的方法,比较高效.

PostMessage就是向窗口发消息,通知窗口显示信息.本回答被提问者采纳

以上是关于请问MFC中PostMessage()在此有啥作用呢?的主要内容,如果未能解决你的问题,请参考以下文章

VC++/MFC中用PostMessage发送鼠标点击事件

MFC中使用PostMessage和SendMessage函数

MFC PostMessage SendMessage

MFC中ProcessMessage()函数有啥作用?

请问DELPHI和VC有啥区别?除了语言上的.

MFC SendMessage和PostMessage 区别