var
  C: Char;
begin
  {...}
  Length(C)//永远是1
end;

解决方案 »

  1.   

    我的是字符串数组啊,而且我也用鼠标指向Scro.C[j]看到了他的值,但它就是不执行。
      

  2.   

    type
      CFGMS=record
        C: array[1..4] of String;
        F: array[1..4] of String;
        G: array[1..4] of String;
        M: array[1..4] of String;
        S: array[1..4] of String;
    end;
    var
      Scro:CFGMS;if Trim(Scro.C[1])<>'' then
      with QueryForSpeci do
        begin
          Close;
          Parameters.ParamByName('matl_no').Value:=Scro.C[j];
          Open;
          EditC1d[j].Text:=Trim(FieldByName('desc2').AsString)
        end
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    type
      CFGMS=record
        C: array[1..4] of String;
        F: array[1..4] of String;
        G: array[1..4] of String;
        M: array[1..4] of String;
        S: array[1..4] of String;
    end;
    var
      Scro:CFGMS;
    begin
      Scro.C[1] := '1';
      if Trim(Scro.C[1])<>'' then
        ShowMessage('OK');
    end;
      

  4.   

    ShowMessage(IntToStr(J) + '|' + Scro.C[J]); //也许并不是你理想的