FormMouseDown背后的组件

时间:2014-08-20 13:57:37

标签: delphi

我注意到FormHouseDown在表单中放置了任何组件时都没有触发,我点击了例如的TLabel?

如何使Form鼠标事件(mousedown,mouseup,mousemove)始终触发?

1 个答案:

答案 0 :(得分:3)

您似乎有几个选择:

  1. 安排表单上的每个控件在处理鼠标消息时都会通知表单。
  2. 使用全局机制(例如TApplication.OnMessage)在将鼠标消息分派给控件之前通知它们,并将其作为这些控件的事件浮出水面。
  3. 在这两个选项中,首先是一场彻底的灾难。第二个是易于实现的,特别是如果您使用TApplicationEvents对象将应用程序对象的事件转换为多播调度。