菜鸟想做1个最简单的控件来感受一下,就是这个控件有2个按钮,做好之后,拖入这个按钮,会一下子出现2个按钮,怎么实现呢??? ( 积分: 100 )

  • 主题发起人 主题发起人 wanglong1
  • 开始时间 开始时间
W

wanglong1

Unregistered / Unconfirmed
GUEST, unregistred user!
菜鸟想做1个最简单的控件来感受一下,就是这个控件有2个按钮,做好之后,拖入这个按钮,会一下子出现2个按钮,怎么实现呢??
 
高手能否说一下制作这样的控件的步骤啊,谢谢。
 
在新控件的constructor Create同时写两个button.Create不就可以了吗?
 
[8D][:)][:D][8D]
 
集成自panel即可。
例:
TMypanel=class(TPanel)
public
btn1,btn2:TButton;
constructor create(owner:TComponent);override;
end;
...
procedure TMypanel.create(owner:TComponent);
begin
inherited;
btn1:=TButton.create(self);
btn1.parent:=self;
btn2:=TButton.create(self);
btn2.parent:=self;
...
end;
这样就可以达到你要的效果。
但是,这个控件,无法为其中两个按钮写事件,因此你还要为TMypanel定义published的属性,一般是定义一些属性或者事件,然后TMypanel再转身赋值给其中的btn,或者,直接published其中的按钮?如果那样,我记得好像在设计器会报错的。如果把btn作为private或者protected成员,然后用property访问则没有问题。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部