在控件中如何获截Owner 是 TFORM的消息?WM_SYSCOMMAND .WM_COMMAND (50分)

  • 主题发起人 主题发起人 Jhdandcl
  • 开始时间 开始时间
J

Jhdandcl

Unregistered / Unconfirmed
GUEST, unregistred user!
我的一个控件中要用到一段代码去缉获 Owner (Owner 是一个TFORM类) 的消息.
我用AppendMenu 在一个FORM系统菜单增加了我的一些自定义菜单项,
当用户选中了我的那个菜单项,系统消息是如何派发的?

我查了相关资料好象是应该先Handle WM_SYSCOMMAND 再Handle WM_COMMAND,
但我没成功,望高手指导....





 
你如果只是实现动态菜单的话,不需要hook,只要在添加tmenuitem的后
mi := TMenuItem.Create(...);
mi.OnClick := your_owner_click_process_procedure;
就可以了
 

To : sherman:
我不是要实现动态菜单 ,而是在一个控件里实现所在TFORM的消息过腻.
也就是实现owner类的消息过历.




 
这个问题我解决了,

SetWindowLong(FWnd , GWL_WNDPROC, LongInt(FoldWinProc ));
.....

过滤WM_SSYCOMMAND 消息.

多谢各位.

 
多人接受答案了。
 
后退
顶部