Ich habe ein Problem mit dem Rückgabewert von ShowModal!
Zuerst erzeuge ich die Form dynamisch:
Delphi-Quellcode:
procedure TfrmSettings.Button1Click(Sender: TObject);
begin
frmVarsBox := TfrmVarsBox.Create(nil);
try
Showmessage(BoolToStr(frmVarsBox.ShowModal = mrOk, true));
finally
frmVarsBox.Free;
end;
end;
Und das Ergebnis ist false (und im falle von mrCancel true).
Dabei hat der Button bOk.ModalResult den Wert mrOk!
Delphi-Quellcode:
procedure TfrmVarsBox.lbVarsKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_RETURN then
bOkClick(bOk)
else if key = VK_ESCAPE then
begin
bCloseClick(bClose);
end;
end;
procedure TfrmVarsBox.bOkClick(Sender: TObject);
begin
ModalResult := mrOk; // Testweise hinzugefügt
close;
end;
Und ich weis einfach nicht, woran es liegen kann...