父控件是否有办法检测子控件何时调整大小?我正在考虑编写一个面板控件来调整大小,因为它的子控件调整大小(类似于HTML DIV元素将扩展以适合它的内容的方式)。
答案 0 :(得分:6)
要回答您的实际问题,我相信在调整子项控件或移动子控件时会调用窗口控件的AlignControls
方法。
答案 1 :(得分:4)
TControl
和TWinControl
内置支持为您处理自动调整大小。您所要做的就是将TControl.AutoSize
属性设置为True。它在protected
中声明为TControl
,因此如果您希望组件用户设置它,则必须将其提升为public
或published
。否则,只需在组件的构造函数中设置它。
如果要自定义父控件相对于子控件的大小,可以覆盖虚拟CanAutoSize()
方法。