我的程序写了一个 清空edit的 语句 用的是 edit.clear  但是这个语句好像只能清空3个 edit 到第四个的时候会报错

解决方案 »

  1.   

    要不就一个个的清空
    要不就遍历清空
    var
      i:Integer;
    begin
      for i:=0 to Form1.ControlCount-1 do
      begin
        if Form1.Controls[i] is TEdit then
        ((Form1.Controls[i]) as TEdit).Text:='';
      end;
    end;
      

  2.   

    2楼正解啊  如果你出错了  肯定是类型判断出错,组件个数出错,又或者不是edit
      

  3.   

    var
      i: integer;
    begin
      for i := 0 to form1.ControlCount - 1 do
        if Controls[i] is TEdit then
          Tedit(Controls[i]).Text := '';
      ShowMessage('任务完成');
      for i := 0 to form1.ControlCount - 1 do
        if Controls[i] is TEdit then
          Tedit(Controls[i]).Text := 'csdn任务';
    end;
      

  4.   

    var
      i: integer;
    begin
      for i := 0 to form1.ControlCount - 1 do
        if Controls[i] is TEdit then
          Tedit(Controls[i]).Clear;
          //Tedit(Controls[i]).Text:='';   也可
    end;