fieldbyname('pic').AsString:=dir;
其中
pic是pic1到pic100   dir是dir1到dir100
 
循环语句怎么写啊    变量怎么定义  谢谢  
var
a,b,i:integer;
for i:=1 to 105 do;
                    a:='pic'+i;
                    b:='dir'+i;
                    if b<>'' then
                    begin
                    fieldbyname('a').AsString:=b;这么写的 不对   新手求多多指点 

解决方案 »

  1.   

    var
      i: integer;
      sfield,sdir: string;
    for i:=1 to 105 do
      begin
      sfield:='pic'+inttostr(i);
      sdir:='dir'+inttostr(i);
      fieldbyname(sfield).asstring:=sdir;
      end;
      

  2.   

    var i:integer;for i:=1 to 100 do
    fieldbyname('pic'+inttostr(i)).assring:='dir'+inttostr(i);
      

  3.   


    这个比较简单明了,楼主可以使用这个
    for i:=1 to 100 do
    fieldbyname('pic'+inttostr(i)).assring:=('dir'+inttostr(i));
      

  4.   

    如果dir1-dir100是个变量如下:
    var
      dir1,dir2,dir3,dir4,dir5:String;
      i:Integer;
    begin
      dir1:='1111';
      dir2:='2222';
      dir3:='3333';
      dir4:='4444';
      dir5:='5555';
      for i:=1 to 5 do
      begin
        Mm1.Lines.Add('dir'+IntToStr(i));
      end;
    end;如果你想用上边这种用一个i来判断某个变量;我也道想学学;不知哪位高手指教指教;如果你是想达到这个效果,希望你用下边这种方式;var
      i:Integer;
      dir :array [0..4] of string;  ----------
    begin
      dir[0]:='1111';
      dir[1]:='2222';
      dir[2]:='3333';
      dir[3]:='4444';
      dir[4]:='5555';
      for i:=1 to 5 do
      begin
        Mm1.Lines.Add(dir[i-1])
      end;
    end;