检测子控件何时调整大小?

时间:2013-01-16 20:15:02

标签: delphi user-interface vcl

父控件是否有办法检测子控件何时调整大小?我正在考虑编写一个面板控件来调整大小,因为它的子控件调整大小(类似于HTML DIV元素将扩展以适合它的内容的方式)。

2 个答案:

答案 0 :(得分:6)

要回答您的实际问题,我相信在调整子项控件或移动子控件时会调用窗口控件的AlignControls方法。

答案 1 :(得分:4)

TControlTWinControl内置支持为您处理自动调整大小。您所要做的就是将TControl.AutoSize属性设置为True。它在protected中声明为TControl,因此如果您希望组件用户设置它,则必须将其提升为publicpublished。否则,只需在组件的构造函数中设置它。

如果要自定义父控件相对于子控件的大小,可以覆盖虚拟CanAutoSize()方法。