TMemo后代有空行

时间:2012-03-24 08:19:40

标签: delphi vcl

我的TMemo后代有构造函数

constructor TMyMemo.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  Lines.Clear;
end;

当我将TMyMemo放在表单上时,我收到错误“控件''没有父窗口。”为什么呢?

2 个答案:

答案 0 :(得分:17)

新创建的备忘录没有内容。但是一旦组件获得名称,就会添加内容,这由设计者自动完成。要防止这种情况发生,请从csSetCaption

中删除ControlStyle
constructor TMyMemo.Create(AOwner: TComponent); 
begin 
  inherited Create(AOwner); 
  ControlStyle := ControlStyle - [csSetCaption];
end; 

答案 1 :(得分:0)

Move Lines.Clear以覆盖方法CreateWnd。创建执行期间不存在基础窗口控件(多行编辑)