procedure TForm1.Button4Click(Sender: TObject);
begin
if edit3.text>edit4.text then
begin
edit5.text:=edit3.text;
end
else
Application.MessageBox('false','提示',mb_ok);
end;
为什么运行之后,结果有时正确,有时不正确呢?
是不是我写错了,请各们大侠救命!

解决方案 »

  1.   

    procedure   TForm1.Button4Click(Sender:   TObject); 
    begin 
    if   edit3.text >edit4.text   then 
    begin 
    edit5.text:=edit3.text; 
    end 
    else 
    Application.MessageBox( "false ", "提示 ",mb_ok); 
    end;你这样写它只当成是字符来比较大小,要进行数字比较写成这样:
     if (strtoint(exit3.text)>strtoint(edit4.text)) then//要进行类型转换,转换成整形再比较,如果是浮点型的就这样写 strtofloat(edit1.text)
      

  2.   

    procedure TForm1.btnClick(Sender: TObject);
    begin
       if (Edit1.Text='') or (Edit2.Text='') then
          showMessage('Please input word!')
       else if StrToInt(Trim(Edit1.Text))>StrToInt(Trim(Edit2.Text)) then
          begin
             Edit3.Text:=Edit1.Text;
          end
       else
          showMessage('Run Error!');
    end;