来来来,看看这段代码!

baifu 2005-04-07 09:31:00
procedure TForm1.Button2Click(Sender: TObject);
var
adoqrysave : Tadoquery;
iCount : integer;
pCheck : ^TCheck;
begin
adoqrysave:=Tadoquery.Create(self);
adoqrysave.Connection:=adoConn;
pCheck:=MyList.Items[currentCount-1];
with adoqrysave do
begin
close;
sql.Clear;
sql.Add('INSERT INTO check(part,subpart)');
sql.Add('VALUES(:part,:subpart)');
parameters.ParamByName('part').Value:=Trim(pCheck.GetPart()); //×运行至此出错。
parameters.ParamByName('subpart').Value:=Trim(pCheck.GetSubPart());
open;
end;
end;

MyList是我声明的一个TList变量,里面存的是TCheck型的变量。每当运行到×那一句的时候,系统就报错,搞不懂为什么。我对于TList不太熟悉,会不会是MyList的使用方法不对?
...全文
71 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
gogogo 2005-04-07
  • 打赏
  • 举报
回复
为什么要用pCheck,你的对象赋值的概念不清晰,这样不知道行不行
procedure TForm1.Button2Click(Sender: TObject);
var
adoqrysave : Tadoquery;
iCount : integer;
oCheck : TCheck;
begin
adoqrysave:=Tadoquery.Create(self);
adoqrysave.Connection:=adoConn;
oCheck:=MyList.Items[currentCount-1];
with adoqrysave do
begin
close;
sql.Clear;
sql.Add('INSERT INTO check(part,subpart)');
sql.Add('VALUES(:part,:subpart)');
parameters.ParamByName('part').Value:=Trim(oCheck.GetPart());
parameters.ParamByName('subpart').Value:=Trim(oCheck.GetSubPart());
open;
end;
end;
或者干脆
procedure TForm1.Button2Click(Sender: TObject);
var
adoqrysave : Tadoquery;
iCount : integer;
begin
adoqrysave:=Tadoquery.Create(self);
adoqrysave.Connection:=adoConn;
with adoqrysave do
begin
close;
sql.Clear;
sql.Add('INSERT INTO check(part,subpart)');
sql.Add('VALUES(:part,:subpart)');
parameters.ParamByName('part').Value:=Trim(MyList.Items[currentCount-1].GetPart());
parameters.ParamByName('subpart').Value:=Trim(MyList.Items[currentCount-1].GetSubPart());
open;
end;
end;
Corn1 2005-04-07
  • 打赏
  • 举报
回复
会不会是你的GetPart()函数有错?

828

社区成员

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

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