Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
Delphi 10 Seattle Enterprise
|
AW: Frame aus eigener Prozedur aufrufen
8. Sep 2015, 23:53
Grobes Rezept: - Für jeden Arbeitsschritt (H, G0, ...) eine Klasse (ableiten von einer Basisklasse, die wiederum von TPersistent
abgeleitet ist)
- Für jede Klasse die ToString
Methode überschreiben (damit geht die Anzeige in der Listbox wie von selbst)
- Lookup-Tabelle um zu der Datenklasse den passenden Frame zu finden
- Datenklasse dem Frame per Assign
zuweisen
- Eingaben aus dem Frame der Datenklasse per Assign
wieder zuweisen
Delphi-Quellcode:
var
LFrame: TFrame;
LData: TPersistent;
LFrame := FrameLookup.GetFrame( LData.ClassType );
LFrame.Assign( LData );
LFrame.Visible := True;
// Eingabedaten aus Frame übernehmen
LData.Assign( LFrame );
Vorteil: Ich brauche bei der Anzeige die konkrete Daten-/Frame-Klasse gar nicht kennen und kann die dadurch einheitlich behandeln.
Neue Daten-/Frame-Klassen lassen sich so einfach hinzufügen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
Geändert von Sir Rufo ( 9. Sep 2015 um 11:37 Uhr)
|