Wiz*_*ard 2 delphi object styling
从这个问题将参考/一个地方的对象传递给样式对象
我只是想,如果我为我造型的项目创建了一个后代类,那该怎么办?
例如(原谅可怜的代码,不是ide,但你应该明白我的意思)
TStyledButton = class(TButton)
public
constructor Create; //This overrides the main TButton
end;
constructor TStyledButton.Create;
begin
inherited;
self.Color := clRed;
end;
Run Code Online (Sandbox Code Playgroud)
然后在我的表单中,我只将Button1作为TStyledButton.
这将删除表单创建中的所有额外代码,以处理设置样式/调用函数以设置样式.
唯一的问题是,如何在设计视图中进行此操作,我是否必须注册此Object(组件?),以便它实际上在设计视图中显示.
在了解Delphi包组件编写器的同时,您可以使用IDE专家创建一个新组件,在创建新的设计时包时自动将其添加到组件中:
首先使用Component/New组件中的IDE专家创建它:
出现提示时,选择"安装到新包"
提供包(文件)名称和描述
瞧!,你的调色板中有你的新组件:
试试这段代码:
TMyButton = class(TButton)
public
constructor Create(AOwner: TComponent); override;
end;
procedure Register;
implementation
uses Graphics;
{ TMyButton }
constructor TMyButton.Create(AOwner: TComponent);
begin
inherited;
Font.Style := [fsBold];
Caption := 'Click me!';
end;
Run Code Online (Sandbox Code Playgroud)
你会得到这个: