如何在线程函数中代用ACTIVEX对象呢?

mark521 2006-03-06 09:11:16
在做一个生产责消费者的程序,生产部分采集数据,消费部分显示数据曲线.而显示曲线用了一个ACTIVEX控件,那如何在消费线程里面代用这个控件函数呢?
...全文
56 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mark521 2006-03-06
  • 打赏
  • 举报
回复
详细点可以吗,不是很明白
lzzqqq 2006-03-06
  • 打赏
  • 举报
回复
把ActiveX控件放到一个对话框上,写一个象下面那样的线程函数:

DWORD dwThread(LPVOID lp)
{
CDlgActiveX dlg;
dlg.Create(IDD_DLG1,this);
dlg.ShowWindow(SW_SHOW);

MSG msg;
while(GetMessage(NULL,&msg,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return EXIT_SUCCESS;
}

就可以了,假如你的主线程要和work线程通信,可以用PostThreadMessage();向work线程发送消息,然后将线程的消息处理改一下:

MSG msg;
while(GetMessage(NULL,&msg,0,0))
{
if (msg.message==WM_MYMSG)//WM_MYMSG为自定消息
{
dlg.SetValue(msg.wparam);//通过SetValue函数将数据传给对话框.
continue;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
}
mark521 2006-03-06
  • 打赏
  • 举报
回复
还有人回答吗,我还是解决不了啊

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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