eigentlich recht simpel die Lösung. Im Prinzip funktioniert das ganze wie bei einem Öffnendialog auch. Folgendes ist ein abgespeckter Beispielsource für das Editform.
Delphi-Quellcode:
[...]
type
TYourRecord = record
Entry1: String;
Entry2: String;
end;
PYourRecord = ^TYourRecord;
TEditForm = class(Form)
[...]
private
FYourRecord: PYourRecord;
public
function Execute(var YourRecord: TYourRecord): Boolean;
end;
function TEditForm.Execute(var YourRecord: TYourRecord): Boolean;
begin
FYourRecord := @YourRecord;
result := ShowModal = mrOk;
end;
procedure TEditForm.OKButtonClick(Sender: TObject);
begin
FYourRecord^.Entry1 := Edit1.Text;
FYourRecord^.Entry2 := Edit2.Text;
modalresult := mrOK;
end;
function TEditForm.AbbrechenButtonClick(Sender: TObject);
begin
modalresult := mrCancel;
end;
der Aufruf lautet dann ganze einfach
Delphi-Quellcode:
if EditForm.Execute(MeinZuEditierenderRecord) then
showMessage('Erfolgreich')
else
showMessage('Nicht editiert');