自定义控件组装问题 我自定义了一个控件从checklistbox里继承,自己加了几个功能,然后再加几个按钮进去.现在要把这个控件跟按钮合在一起组成一个新的控件.现在遇到的问题不会组装成一个控件,我的想法是把这些放在一个面板上.请帮我看一下下面的代码,在要使用这个控件的时候会跳出 control '' has no parent window 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 type T_CheckListBox = class(TCheckListBox) private { Private declarations } FPanel:TPanel; FbtnSelAll:TButton; FbtnClearAll:TButton; FbtnUp:TButton; FbtnDown:TButton; FLabel: TLabel; ChB:TCheckBox; CLBList:TList;Constructor T_CheckListBox.Create(AOwner:TComponent);begin Inherited Create(AOwner); CLBList:=TList.Create; FPanel:=TPanel.Create(self); FbtnSelAll:=TButton.Create(self); FbtnClearAll:=TButton.Create(self); FbtnUp:=TButton.Create(self); FbtnDown:=TButton.Create(self); FLabel:=TLabel.Create(self); FLabel.Caption:='移'+#13+'动'; FPanel.Parent:=(Parent as TPanel); FPanel.Left:=216; FPanel.Top:=12; FPanel.Width:=193; FPanel.Height:=321; self.Parent:=FPanel; self.Left:=5; self.Top:=5; self.Width:=160; self.Height:=290; FbtnSelAll.Parent:=FPanel; FbtnSelAll.Caption:='全选'; FbtnSelAll.Left:=32; FbtnSelAll.Top:=296; FbtnSelAll.Width:=56; FbtnSelAll.Height:=21; FbtnSelAll.OnClick:=btnSelAllClick; FbtnClearAll.Parent:=FPanel; FbtnClearAll.Caption:='全清'; FbtnClearAll.Left:=110; FbtnClearAll.Top:=296; FbtnClearAll.Width:=56; FbtnClearAll.Height:=21; FbtnClearAll.OnClick:=btnClearAllClick; FbtnUp.Parent:=FPanel; FbtnUp.Caption:='▲'; FbtnUp.Left:=168; FbtnUp.Top:=72; FbtnUp.Width:=17; FbtnUp.Height:=25; FbtnUp.OnClick:=btnUpClick; FLabel.Parent:=FPanel; FLabel.Left:=168; FLabel.Top:=109; FLabel.Width:=17; FLabel.Height:=25; FbtnDown.Parent:=FPanel; FbtnDown.Caption:='▼'; FbtnDown.Left:=168; FbtnDown.Top:=140; FbtnDown.Width:=17; FbtnDown.Height:=25; FbtnDown.OnClick:=btnDownClick;end; 要怎么样才能使这组合成一个控件,而且这个控件还是要从TCheckListBox继承来,如果是从TPanel继承来我可以实现组装在一起但是功能上不满足,就没有TCheckListBox原有的功能啦 高手们请进来看看。 向dbGrid加组件 高手帮忙,求读取XML消息包的例子 fastreport高手请进,急 向DELPHI版主建议,成立DELPHI开发者MSN俱乐部! 请问,怎样模拟一个组合键? 怎么用delphi作最小的程序 最经典的,带源代码! 关于网络计费实现的问题 Pascal 紧急求救!!! 谁有Eastunfail的LexLib的源码 ?能 否发给我一份。谢谢。 無效的對象名
T_CheckListBox = class(TCheckListBox)
private
{ Private declarations }
FPanel:TPanel;
FbtnSelAll:TButton;
FbtnClearAll:TButton;
FbtnUp:TButton;
FbtnDown:TButton;
FLabel: TLabel;
ChB:TCheckBox;
CLBList:TList;
Constructor T_CheckListBox.Create(AOwner:TComponent);
begin
Inherited Create(AOwner);
CLBList:=TList.Create;
FPanel:=TPanel.Create(self);
FbtnSelAll:=TButton.Create(self);
FbtnClearAll:=TButton.Create(self);
FbtnUp:=TButton.Create(self);
FbtnDown:=TButton.Create(self);
FLabel:=TLabel.Create(self);
FLabel.Caption:='移'+#13+'动'; FPanel.Parent:=(Parent as TPanel);
FPanel.Left:=216;
FPanel.Top:=12;
FPanel.Width:=193;
FPanel.Height:=321; self.Parent:=FPanel;
self.Left:=5;
self.Top:=5;
self.Width:=160;
self.Height:=290; FbtnSelAll.Parent:=FPanel;
FbtnSelAll.Caption:='全选';
FbtnSelAll.Left:=32;
FbtnSelAll.Top:=296;
FbtnSelAll.Width:=56;
FbtnSelAll.Height:=21;
FbtnSelAll.OnClick:=btnSelAllClick; FbtnClearAll.Parent:=FPanel;
FbtnClearAll.Caption:='全清';
FbtnClearAll.Left:=110;
FbtnClearAll.Top:=296;
FbtnClearAll.Width:=56;
FbtnClearAll.Height:=21;
FbtnClearAll.OnClick:=btnClearAllClick; FbtnUp.Parent:=FPanel;
FbtnUp.Caption:='▲';
FbtnUp.Left:=168;
FbtnUp.Top:=72;
FbtnUp.Width:=17;
FbtnUp.Height:=25;
FbtnUp.OnClick:=btnUpClick; FLabel.Parent:=FPanel;
FLabel.Left:=168;
FLabel.Top:=109;
FLabel.Width:=17;
FLabel.Height:=25; FbtnDown.Parent:=FPanel;
FbtnDown.Caption:='▼';
FbtnDown.Left:=168;
FbtnDown.Top:=140;
FbtnDown.Width:=17;
FbtnDown.Height:=25;
FbtnDown.OnClick:=btnDownClick;
end;