我继承了一个PANEL,然后在一个PANEL中添加我新继承的对象,使用的方法是INSERTCONTROL,
提示我类型错误,说我的类不是TCONTROL.我明明是从TPANEL继承的,为什么呢?
提示我类型错误,说我的类不是TCONTROL.我明明是从TPANEL继承的,为什么呢?
解决方案 »
- 简单的反而不会了,indy post 的问题
- 用TChart显示图形的问题!!!来者皆有分!因为着急所以把我仅有的40分全拿出来!!!
- 求教一个dbgrid的问题
- 关于DBGRIDEH提交数据的问题??
- 请问TIdUdpClient如何接收TIdUdpServer发送来的数据
- 皮皮散分系列之四<小桥>
- access的数字型和货币型为何用Table1.Fields[i].DataType取出来都是ftfloat???
- 小问题-----30分
- 急救,文件及目氯加密!
- 如何取得存储过程的返回参数???在线等待....
- 這個錯誤怎麽解決呀?謝謝大家指點一下
- 网络服务器运行一两个小时后CPU的占用率就渐至100%是怎么回事?
VCL会自动调用INSERTCONTRO的
你是先通过继承panal写了个控件? 然后再在一个panal控件上面放一个你写的这个控件吗?
这样的话你先手工放一个试试,不要用语句看看结果
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;type
tp = class(TPanel)
public
lb : TLabel;
constructor Create(AOwner: TComponent); override;
end;
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
Panel1: TPanel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
a :tp;
begin
a := tp.Create(nil);
a.Parent := Form1;
a.Left := 100;
a.Top := 200;
a.Caption := 'adsfasf';
end;{ tp }constructor tp.Create(AOwner: TComponent);
begin
inherited;
lb := TLabel.Create(AOwner);
lb.Parent := Self;
lb.Left := 10;
lb.Top := 10;
lb.Caption := 'haha';
end;end.
WINXP D7下测试通过