高分请教:wxWidgets中怎么处理其它窗口发来的WM_COPYDATA消息?

flyinghawkren 2007-05-15 09:11:05
窗口间通信中经常用WM_COPYDATA互发消息,请问用wxWidgets编写的程序怎么处理这些程序发来的WM_COPYDATA?万分感谢
...全文
695 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kevin_yuanhui 2008-06-19
  • 打赏
  • 举报
回复
最近做了一个项目,是做一个动态库,导出一些UI供外部程序调用,该库还要跨平台,刚刚完工。
对于没有接触过wxWidgets和MAC机的我来说的确是学到了很多东西。
一些工作心得还写到了播客上,有兴趣的可以去看看http://www.blog.163.com/kevin_fly/
欢迎大家讨论交流,共同进步。
flyinghawkren 2007-05-19
  • 打赏
  • 举报
回复
谢谢大家,经过分析src/msw/window.cpp,已经找到方法了:通过重载wxWindow的MSWWindowProc方法莱实现。
我的实现类似下面的:
WXLRESULT MyPanel::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
{
switch( message )
{
case WM_COPYDATA:
....;
break;
default:
break;
}
return wxPanel::MSWWindowProc( message, wParam, lParam );
}
iambic 2007-05-17
  • 打赏
  • 举报
回复
有一本书《Cross-Platform GUI Programming with wxWidgets》你可以多参考下,虽然里面的很多东西都是搬的wxWidgets文档,但是主题性还算不错。
iambic 2007-05-17
  • 打赏
  • 举报
回复
参考wxWidgets文档里的

::wxPostEvent

函数。

其实google wxWidgets sendmessage就有一些结果了。
spofmy 2007-05-17
  • 打赏
  • 举报
回复
关注了
lightnut 2007-05-16
  • 打赏
  • 举报
回复
wxWidget没有这个功能(WM_COPYDATA);

因为要作到跨平台, wxWidget对特定于Windows的某些特性的支持是很弱的(如OLE).

要使用进程间通信, 最好使用wxWidget中提供的有关socket类.

你可以看以下其手册中的以下主题:
Interprocess communication overview;
以及wxSock***等类.
flyinghawkren 2007-05-15
  • 打赏
  • 举报
回复
不是发送消息,是如何处理其它程序发过来的消息
星羽 2007-05-15
  • 打赏
  • 举报
回复
不可以sendmessage吗

帮顶

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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