Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Objectliste an modales Fenster übergeben und zurück

  Alt 24. Jan 2018, 07:54
Moin enricoffo,

ich würde es sogar so machen:
Im modal aufzurufenden Fenster wird ein Feld unter private angelegt.
Dann noch eine property unter public mit read und write, die dieses Feld benutzt.
Das Formular, von dem aus aufgerufen wird, übergibt an die property das Object
und ruft dann das Unterformular auf, dass dann damit etwas macht.
Oder in Codeform:

Delphi-Quellcode:
TSubForm = class
private
  FObjectToWorkOn : TKlasse;
public
  property ObjectToWorkOn : TKlasse read FObjectToWorkOn write FObjectToWorkOn;
end;


procedure TSubForm.OnShow...
begin
  // Mach was mit ObjectToWorkOn
end;

procoedure TMainForm.IrgendeineMethode;
begin
  SubForm.ObjectToWorkOn := MainForm.DasObjectDasManipuliertWerdenSoll;
  SubForm.ShowModal;
end;
Damit verbleibt die Verwaltung des Objektes beim Aufrufer.

Man sollte nur dann ein Objekt als Rückgabewert verwenden, wenn
die Klasse die hierfür erzeugten Objekte intern verwaltet.
(z.B. TListView mit TListView.Items.Add)
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat