Wenn du es entsprechend der anderen Dialoge machen willst, dann erzeuge deine Dialog-Komponente (also hier wohl dein Formular) und rufe deren Execute auf. Wenn die Komponente nicht mehr gebraucht wird, zerstörst du sie wieder.
Theoretisch wäre auch eine Klassenfunktion möglich, aber das wäre dann nicht die typische Execute-Funktion, die in Delphi sonst verwendet wird.
// EDIT:
@
bummi:
Da fehlt irgendwie die Freigabe des Objektes...
Außerdem der Ressourcenschutzblock.
Außerdem geht das besser so (würde ich aber wie gesagt nicht so machen):
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| class function TMyDialog.Execute(): Boolean; var MyDialog: TMyDialog; begin MyDialog := TMyDialog.Create(nil); try Result := MyDialog.ShowModal = mrYes; finally MyDialog.Free; end; end; |