有关自定义的消息的问题。谢谢。

zhtoad 2009-11-17 01:38:39
各位,我把自己需要的几个组件组合成一个新的组件:newPanel。这个newpanel里面有一个按钮,按动的时候,他往外发消息PostMessage(Handle,CM_SOCKETREADMSG,123,456);// CM_SOCKETREADMSG是自己定义的。

然后,为了验证一下功能,我在一个实验程序中放了这个newPanel和一个按钮Button1。
按钮的OnClick处理函数是:
PostMessage(Handle,CM_MYMSG,123,456); //CM_MYMSG石自己定义的第二个消息。

然后写了消息处理函数:
void __fastcall TForm1::mymsghandle(TMessage & Msg) //CM_MYMSG
{
Memo1->Lines->Add("get CM_MYMSG");
}

void __fastcall TForm1::socketreadhandl(TMessage & Msg)//CM_SOCKETREADMSG
{
Memo1->Lines->Append("get CM_SOCKETREADMSG");
}
结果我发现:
按Button1的时候,Memo能收到"get CM_MYMSG"
但是,我按newPanel里面的Button的时候,什么反应都没有。我分析:有可能newPanel里面通过PostMessage(Handle,CM_SOCKETREADMSG,123,456);并没有成功。
请教一下:为了实现这种应用,在newPanel里面该怎么往外发送消息?
谢谢。
...全文
38 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ccrun.com 2009-11-17
  • 打赏
  • 举报
回复
组件的Handle和窗体的Handle是不一样的.
newPanel中应该向Form的Handle发送消息.
我不懂电脑 2009-11-17
  • 打赏
  • 举报
回复
注意Handle是否正确,最好用SendMessage可以看返回值找错误信息。

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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