Delphi 是否检测窗体上任何可视组件的可见性更改?
当Delphi窗体上的任何可视组件更改其可见性状态时,即当它变为可见或不可见时,是否可能触发事件?Delphi 是否检测窗体上任何可视组件的可见性更改?,delphi,delphi-xe2,Delphi,Delphi Xe2,当Delphi窗体上的任何可视组件更改其可见性状态时,即当它变为可见或不可见时,是否可能触发事件? 我可以写一个计时器,例如10毫秒来检查这个,但这将是非常麻烦的。难道没有一种优雅的方法可以做到这一点吗?对于任何类型的控件,都要这样做吗?另外,为什么要这样做?@DavidHeffernan通常用于单个控件,但也可能用于多个控件,其中包括多种类型的控件。用于调试。您可以替换窗口过程。使用WindowProc属性。收听CM_VISIBLECHANGED。我认为。在列表中始终保留所有控件及其可见性状态
我可以写一个计时器,例如10毫秒来检查这个,但这将是非常麻烦的。难道没有一种优雅的方法可以做到这一点吗?对于任何类型的控件,都要这样做吗?另外,为什么要这样做?@DavidHeffernan通常用于单个控件,但也可能用于多个控件,其中包括多种类型的控件。用于调试。您可以替换窗口过程。使用WindowProc属性。收听CM_VISIBLECHANGED。我认为。在列表中始终保留所有控件及其可见性状态的列表。替代窗体上的对齐控件。每当它被点击时,迭代列表以获得可能的状态更改。当然,我并不是真的这么说。