我编写了一个来自TCustomEdit的控件,但是在修改StdCtrls中定义的组件的默认大小时遇到了问题(即宽度= 121,高度= 21)。
所以在创作中我有:
inherited Create(AOwner);
width:=40;
height:=20;
但是当控件放在窗体上时,它将使用TCustomEdit的默认宽度和高度绘制。我已经将测试用例简化为一个只包含上面构造函数的简单组件,而不是其他任何东西。我也尝试在构造函数中设置autosize:=false
,但没有快乐。
从搜索中我觉得我做的是正确的,但显然它不起作用。如何获得我追求的行为?
答案 0 :(得分:4)
这对我有用(XE2)。确保您的构造函数标记为override
,以便实际调用它:
constructor Create(AOwner : TComponent); override;
这是必要的,因为TComponent
有一个虚拟构造函数。