数据表 dd 
字段1.rom:  0101至0140,0201至0240 
    2.STA: VR  VD VC VM OO 
如何将这么多的数据在STRINGGRID上显示,且能控制STRINGGRID一行可以显示几个(15个),我换行后第二行从16列开始(晕啊),且ROM与STA还是连在一起显示不换行,怎么跟第一行一样从第一列开始,下面是我的写的代码,出错在哪,请各位大侠帮帮忙 
var 
  rom, STA: string; 
  i,d:Integer; 
begin 
  with adoq11 do 
    begin 
      i:=0; 
      d:=0; 
      while not eof do 
        begin 
        rom:=trim(fieldByName('rom').AsString); 
        sta:=trim(fieldByName('sta').AsString); 
        sgd1.Cells[i,d]:=rom+#13#10+STA; 
        IF I>=15 THEN 
            D:=D+1; 
        next; 
        i:=i+1; 
        end; 
      end; 
end;                            

解决方案 »

  1.   

    ROM与STA连在一起显示 什么意思?
      

  2.   

    你这个帖子已经发第二遍了这是, IF I>=15 THEN 这里,用: i mod 15=0
      

  3.   


    var 
      rom, STA: string; 
      c,r:Integer; 
    begin 
      with adoq11 do 
      begin 
        c:=0; 
        r:=0; 
        while not eof do 
        begin 
          rom:=trim(fieldByName('rom').AsString); 
          sta:=trim(fieldByName('sta').AsString); 
          sgd1.Cells[c,r]:=rom+#13#10+STA;
          next;
          c:=c+1;  
          if (c mod 15= 0) then
          begin 
            r:=r+1;
            c:=0;
          end;     
        end; 
      end; 
    end;
    未测试
      

  4.   

    rom与STA到在SQD1同一格显示(分两行)
    例第一行第一列 0101
                  VR
    星期一结贴