我有一个表单,上面有一个包含三个值的组合框:90、95 和 99。我希望用户仅从这三个值中进行选择,并在输入另一个值时引发错误。所以我编写了以下代码来显示一条消息,提醒用户注意错误。问题是当 messageDlg 出现并且用户点击“确定”时,整个表单关闭。我希望用户在关闭 MessageDlg 后能够做出正确的选择。
if not ((cbPILimits.Text = '90') or
(cbPILimits.Text = '95') or
(cbPILimits.Text = '99')) then
begin
MessageDlg('The PI limit levels can only be 90%, ' +
'95% or 99%. Please choose among these three.',
mtError, [mbOK], 0);
if not (TryStrToFloat(cbPILimits.Text, PIPercent)) then exit;
end;
Close;