【发布时间】:2021-12-19 16:05:26
【问题描述】:
我创建了一个if 语句,当输入的代码与生成的代码匹配时,我想使用`ShowMessage() 函数输出一条消息。但是,它仍然输出“干得好!”即使是明显错误的消息。
按钮代码:
procedure TfrmCAPTCHA.btnCheckClick(Sender: TObject);
var
sCode, sAnswer : string;
bRightAnswer, bWrongAnswer : boolean;
begin
{button to verify input}
sANswer := Trim(edtAnswer.Text);
sCode := edtCaptchaCode.Text;
bRightAnswer := (sAnswer = sCode);
bRightAnswer := True;
bWrongAnswer := (sAnswer <> sCode);
bWrongAnswer := False;
if bRightAnswer then
begin
btnCAPTCHAContinue.Show;
Showmessage('Nicely Done, seems you''''re all set to go!' + #13 +
'Press the continue button to collect your codes young wizzling');
end
else begin
edtCAPTCHACode.clear;
edtAnswer.clear;
btnCAPTCHAContinue.Hide;
Showmessage( 'That seems to be the wrong answer, please try again');
end;
end;
【问题讨论】:
-
写
if sAnswer = sCode then怎么样 - 这对你来说更有意义吗? -
你的问题归结为:为什么这评估为真:
if true = true then Write('The answer is true); ?
标签: if-statement delphi boolean