Hallo Liebe Delphi-Freunde,
als Anfänger bin ich mal wieder an einem (einfachen) Problem kleben geblieben. Ich habe eine Formular erstellt, indem man Einstellungen machen kann und dieses Formular über "OK" bzw. "Abbruch" wieder schließen kann. Die dazugehörige Funktion sieht dafür wie folgt aus:
Delphi-Quellcode:
// ruft das Formular modal auf, bis gueltige Eingabe oder Abbruch und gibt
// zurueck, ob OK oder Abbrechen geklickt wurde
function TFrmSettings.execute:boolean;
begin
case ShowModal of
mrOk:
begin
if not (FrmSettings.SpnEdtTaskNumber.Value<1) and not (FrmSettings.SpnEdtTaskNumber.Value>10)
and (FrmSettings.RdGrpOperator.ItemIndex<>-1) then
begin
execute:=FALSE;
ShowMessage(Correct);
end
else
begin
execute:=TRUE;
ShowMessage(Fail);
end;
end;
mrCancel: execute:=FALSE;
end;
end;
Diese Funktion wird nun in der MainUnit aufgerufen:
Delphi-Quellcode:
procedure TFrmMain.BtnSettingsClick(Sender: TObject);
begin
repeat
FrmSettings.execute;
until not FrmSettings.execute ;
Das Problem ist, das immer 2 mal auf OK oder ABBRUCH geklickt werden muss bevor sich das Formular schließt. Habt ihr eine Idee, was ich da übersehen habe?
Vielen vielen Dank