如何在编辑Delphi窗体时拦截控件移动

9

我正在开发一个可视化组件(VCL),一个专门的TPanel。我需要拦截用户在编辑表单时放置在我的特殊面板上的控件移动的事件。我需要拦截移动事件以调整其他放置在同一特殊面板上的控件的视觉属性。

我的问题是:当用户在IDE中编辑表单时,如何拦截/检测/响应放置在TCustomPanel衍生组件上的控件的移动?


你可以重写 AlignControls - kobik
谢谢@kobik,那就是正确的解决方案。如果你将其重写为答案,我会授予你正确的答案。 - fpiette
1
我非常好奇这种方法是否有效。 - RBA
1
是的,覆盖 AlignControls 功能可以完美地工作。 - fpiette
1个回答

6

你可以重写容器TPanelAlignControls方法。其中的AControl参数会告诉你哪个子控件被移动或插入到了容器中,然后你可以做出相应的反应。如果需要,你可以调整其他子控件的位置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接