程序要完成的功能是把数据表中的4个字段里的内容一个字节一个字节的输出来,当把一行记录都输出后,清空屏幕,再输出下一行记录。可不知道是为什么这段程序总是在输出数据表中一行记录后,又多输出很多东西,请问这到底是那的错,我应该怎么改!谢谢!
(j的初值是0,i的初值是1)procedure TForm2.FormCreate(Sender: TObject);
begin
words:=table1.Fields[j].asstring;//获取第一个字段的信息
end;
procedure TForm2.Timer1Timer(Sender: TObject);
begin
case j of
0:begin
if words[i]<>'' then
begin
label1.Caption:=label1.Caption+words[i];//输出第一个字段中一个字符
i:=i+1;
end
else begin
j:=j+1;
words:=table1.Fields[j].asstring;//获取第二个字段的信息
i:=1;
end;
end;
1:begin
if words[i]<>'' then
begin
label2.Caption:=label2.Caption+words[i];//输出第二个字段的一个字符
i:=i+1;
end
else begin
j:=j+1;
words:=table1.Fields[j].asstring;//获取第三个字段的信息
i:=1;
end;
end;
2: begin
if words[i]<>'' then
begin
label3.Caption:=label3.Caption+words[i];//输出第三个字段的一个字符
i:=i+1;
end
else begin
j:=j+1;
words:=table1.Fields[j].asstring;//获取第四个字段的信息
i:=1;
end;
end; 3:begin
if words[i]<>'' then
begin
label4.Caption:=label4.Caption+words[i];//输出第四个字段的一个字符
i:=i+1;
end
else
j:=j+1;
end;
4: begin//一行记录都输出完,清空
j:=0;
i:=1;
label1.Caption:='';
label2.Caption:='';
label3.Caption:='';
label4.Caption:='';
table1.Next;//准备下条记录
words:=table1.Fields[j].asstring; end;
end;
end;end.
(j的初值是0,i的初值是1)procedure TForm2.FormCreate(Sender: TObject);
begin
words:=table1.Fields[j].asstring;//获取第一个字段的信息
end;
procedure TForm2.Timer1Timer(Sender: TObject);
begin
case j of
0:begin
if words[i]<>'' then
begin
label1.Caption:=label1.Caption+words[i];//输出第一个字段中一个字符
i:=i+1;
end
else begin
j:=j+1;
words:=table1.Fields[j].asstring;//获取第二个字段的信息
i:=1;
end;
end;
1:begin
if words[i]<>'' then
begin
label2.Caption:=label2.Caption+words[i];//输出第二个字段的一个字符
i:=i+1;
end
else begin
j:=j+1;
words:=table1.Fields[j].asstring;//获取第三个字段的信息
i:=1;
end;
end;
2: begin
if words[i]<>'' then
begin
label3.Caption:=label3.Caption+words[i];//输出第三个字段的一个字符
i:=i+1;
end
else begin
j:=j+1;
words:=table1.Fields[j].asstring;//获取第四个字段的信息
i:=1;
end;
end; 3:begin
if words[i]<>'' then
begin
label4.Caption:=label4.Caption+words[i];//输出第四个字段的一个字符
i:=i+1;
end
else
j:=j+1;
end;
4: begin//一行记录都输出完,清空
j:=0;
i:=1;
label1.Caption:='';
label2.Caption:='';
label3.Caption:='';
label4.Caption:='';
table1.Next;//准备下条记录
words:=table1.Fields[j].asstring; end;
end;
end;end.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货