标签:
普通控件都只有一个构造函数,但是这个构造函数却强迫指定AOwner,也就是说,VCL希望将所有控件(至少是所有可视化控件)全部置于它的管理之下。至于到底显示不显示,那是另一个层次的问题。这个问题其实挺简单,但我就是希望强化一下这个概念。简单观察一下TLabel的构造函数就可以明白这一点:
constructor TCustomLabel.Create(AOwner: TComponent); begin inherited Create(AOwner); ControlStyle := ControlStyle + [csReplicatable]; Width := 65; Height := 17; FAutoSize := True; FShowAccelChar := True; { The "default" value for the Transparent property depends on if you have Themes available and enabled or not. If you have ever explicitly set it, that will override the default value. } if ThemeServices.ThemesEnabled then ControlStyle := ControlStyle - [csOpaque] else ControlStyle := ControlStyle + [csOpaque]; end;
控件构造函数需要的是AOwner TComponent,而不是Parent
标签:
原文地址:http://www.cnblogs.com/findumars/p/4676851.html