整形数组作为for循环的条件进行检索数据(50分)

  • 主题发起人 主题发起人 ayayzh
  • 开始时间 开始时间
A

ayayzh

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用一个整形数组作为for循环的条件进行检索数据
 
想用就用呢
 
好像没提什么问题啊
 
我不知道条件怎么写
 
a:array[0..30]of integer; 这个是申明的数组
procedure TForm1.FormShow(Sender: TObject);
begin
ADOQ[0]:=ADOQuery1; ADOQ[1]:=ADOQuery2;ADOQ[2]:=ADOQuery3;ADOQ[3]:=ADOQuery4; ADOQ[4]:=ADOQuery5; ADOQ[5]:=ADOQuery6; ADOQ[6]:=ADOQuery7; ADOQ[7]:=ADOQuery8;
TreeView1.Items.Clear;
ADOQ[0].Close;
ADOQ[0].SQL.Clear;
ADOQ[0].SQL.Add('select * from shu where hzdm is null order by hzdm');
ADOQ[0].Open;
ADOQ[0].First;
while not ADOQ[0].eof do 用这个作为条件执行没有问题
for a[0]:=0 to ADOQ[0].RecordCount-1 do 换用这个就报错了,请解决报错问题
begin
node[0]:=TreeView1.Items.Add(nil,ADOQ[0].fieldbyname('name').AsString);
m:=1; i:=1;
shu;
ADOQ[0].Next;
end;
end;
 
for a[0]:=0 to ADOQ[0].RecordCount-1 do
这行代码我都理解不了更何况编译器了
 
你使用一个临时变量试试.
var temp:integer;
temp:=ADOQ[0].RecordCount-1;
for a[0]:=0 to temp do 换用这个就报错了,请解决报错问题
begin
node[0]:=TreeView1.Items.Add(nil,ADOQ[0].fieldbyname('name').AsString);
m:=1; i:=1;
shu;
ADOQ[0].Next;
end;
end;
 
我知道用的是一 个变量,目的是这个变量就是数组的
 
ADOQ[0] 这个也是申明的一个数组类型的ADOQuery
 
我也不明白。只是有时候你放在for循环就会不对。
 
那是不是for循环不能用数组啊
 
for 循环变量不能使用数组。你可以使用repeat这样的语句代替。这样你就可以使用数组了。
 
数据库表的内容如下:

name mcdm hzdm
打开法 1 4
地方 2 4
风格法 3 4
而特 4 6
豆腐干 5 6
士大夫 6 8
6通 7 8
明年,明年 9
不能不 11 9
用途感 12 9
A A 1
B B 1
s D A
d S A
才 66 S
风格吧 666 S
统一体眼 8
 
要求用树型结构实现帐套
统一体眼
|6通
|士大夫
|豆腐干
|而特
|打开法
|A
|d
|B
|风格法
|地方
明年,明年
|用途感
|不能不

这个是想实现的树结构
树结构的特点是无限级的
 
repeat 读出的数据在循环树中多了一 个数据,要求下移一个就对了
请问在repeat的循环条件中如何让条件减少一个呢
 
后退
顶部