有6个EDIT.TEXT输入框,请教如何判断这6个输入框内容是否相同,相同给出提示!有没有好的方法啊!谢谢

解决方案 »

  1.   

    if (AnsiCompareStr(Edit1.Text, Edit2.Text) = 0) and
        (AnsiCompareStr(Edit1.Text, Edit3.Text) = 0) and
        (AnsiCompareStr(Edit1.Text, Edit4.Text) = 0) and
        (AnsiCompareStr(Edit1.Text, Edit5.Text) = 0) and
        (AnsiCompareStr(Edit1.Text, Edit6.Text) = 0) then
        ShowMessage('相同');
      

  2.   

    AnsiCompareStr:区分大小写
    AnsiCompareText:不区分大小写
      

  3.   


    function TForm1.SameInput: boolean;
    var
      i: Integer;
      s: string;
    begin
      Result := False;  s := Trim(Edit1.Text);
      
      for i := 2 to 6 do 
        if Trim(TEdit(FindComponent('Edit' + IntToStr(i))).Text) <> s then
          Exit;  Result := true;
    end;
      

  4.   

    写错了,上面的只是比较了和Edit1,重写一下:function TForm1.SameInput: boolean;
    var
      i, j: Integer;
      s: string;
    begin
      Result := False;
      for i := 1 to 5 do begin
        s := Trim(TEdit(FindComponent('Edit' + IntToStr(i))).Text);
        for j := i + 1 to 6 do 
          if Trim(TEdit(FindComponent('Edit' + IntToStr(j))).Text) <> s then
            Exit;
      end;
      Result := true;
    end;
      

  5.   

    楼主的需求,是要比较6个Edit内容都相同。所以1和2,1和3,1和4,1和5,1和6比较就可以了。
      

  6.   

    还是用2楼的方法, 因为用DELPHI提供的方法比自己写效率上要高多了。
    介意用:CompareStr(const s1, s2: string): Integer;区分大小写
            CompareText(const S1, S2: String): Integer; SameText(Const S1, S2: String): Boolean; 这两个不区分大小写