主窗体调用dll窗体,dll窗体上button的CM_MOUSEENTER,CM_MOUSELEAVE消息收不到,怎么回事?

Merrybip 2007-12-07 09:25:30
主窗体调用dll窗体,dll窗体嵌到主窗体的一个panel上面
dll窗体上button的CM_MOUSEENTER,CM_MOUSELEAVE消息收不到,怎么回事,还有一些其他控件的消息也收不到?
急得很,希望大家帮忙
分不够可以加!
...全文
166 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yagzh 2007-12-07
  • 打赏
  • 举报
回复
你要加入Initialization
CoInitialize(nil);
打开COM才行
Merrybip 2007-12-07
  • 打赏
  • 举报
回复
我估计是panel把dll窗体的消息吃了
你说呢?
Merrybip 2007-12-07
  • 打赏
  • 举报
回复
application是传给dll了的,切换什么意思?
金卯刀 2007-12-07
  • 打赏
  • 举报
回复
確認是否有將主窗體的application傳遞給dll,並作切換?
Merrybip 2007-12-07
  • 打赏
  • 举报
回复
自己顶一下!
金卯刀 2007-12-07
  • 打赏
  • 举报
回复
panel是不會得到這個消息的,要知道消息是在dllform上產生的,記錄的是
dllform的handle,application調用api--dispatchmessage直接發送消息到dllform上的button的窗口處理函數;
再看你的問題,請問:你是如何檢測沒有收到此類消息的?把button子類化了?如果你中間有作任何處理,再檢查看看;
另外,如果你沒有把主窗的appliaction正確給dll,那麼你在dllform上行為就不會反映出來了

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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