菜问题!:d

djhai 2003-09-24 10:09:47
为何我定义的会出错?
var
ADOQuery:TADOQuery;
begin
ADOQuery:=TADOQuery.create(self);//出错的地方:self未定义
............
...........
............
end;
...............
明天早上听消息(谢谢帮忙)我是初学者:P
...全文
26 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
djhai 2003-09-25
  • 打赏
  • 举报
回复
打错了是:未初始化问题?
djhai 2003-09-25
  • 打赏
  • 举报
回复
那如何解决如上:ADOQuery未定义的问题???
oracle_lover 2003-09-25
  • 打赏
  • 举报
回复
不是TADOQuery的类的实例做owner
Txxxxxxx.yyyyy()
begin
ADOQuery:=TADOQuery.create(self);
//这里self代表的是xxxxxxx,而不是ADOQuery
//xxxxxxx必须是可以做owner的对象,比如说Form
end;
djhai 2003-09-25
  • 打赏
  • 举报
回复
谢谢你们的回答!
to oracle_lover(数据库情人):我肯定TAQOQuery的类的实例可以作owner,
如果在form中调用是可行的,但
我现在是存放一个单元内的函数,已经uses了一些相关的文件
但问题还是未解决???


to FrameSniper(人类不能不吃饭@手机不能不充电.net):
ADO原生对象创建的东东,不知如何把数据让DBGrid 控件来显示出来??
FrameSniper 2003-09-24
  • 打赏
  • 举报
回复
使用ADO原生对象的时候最好使用CreateOleObject来进行动态创建

因为ADO原生对象就是一个COM对象
oracle_lover 2003-09-24
  • 打赏
  • 举报
回复
procedure TForm1.FormCreate(Sender: TObject);
var
aaa:TButton;
begin
aaa:=TButton.Create(self);
...
end;

如上是没有问题的。self在TForm1的过程(函数)中表示Form1
也就是说,在某个类的过程中使用self,表示调用这个方法的这个类的实例。
而Create()的括号中的对象,是你要创建的对象的owner,负责该对象的创建与销毁

你的问题可能是,上述Create方法并不是某个类的方法,或该类的实例不能够作owner

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧