Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   TForm - ist es möglich diese Klasse zu vererben und zu erweitern ... (https://www.delphipraxis.net/198709-tform-ist-es-moeglich-diese-klasse-zu-vererben-und-zu-erweitern.html)

mbulm1 25. Nov 2018 12:13

TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Hallo Zusammen,
wie kann ich die Klasse TForm vererben und erweitern?
Wo gibt es Beispiele dazu?
Hintergrund ist - dass ich für meine Anwendungen grundsätzlich ein spez. Form-Design mitgeben möchte.
Vielen Dank vorab für Eure Mühen.
Beste Grüße
MB

KodeZwerg 25. Nov 2018 12:33

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Schau Dir als Beispiel mal die ur-alten TNT-Controls an (die aus non-Unicode versuchen Unicode einzubinden).
Bei Google suchenDelphi TNT

Schokohase 25. Nov 2018 12:34

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Jede Form die du in deiner IDE erstellst und bearbeitest ist eine Ableitung von
Delphi-Quellcode:
TForm
.
Delphi-Quellcode:
type
  TForm1 = class(TForm)
  end;
Vor diesem Hintergrund klingt die Frage etwas seltsam.

Uwe Raabe 25. Nov 2018 12:39

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Zitat:

Zitat von mbulm1 (Beitrag 1419112)
Hintergrund ist - dass ich für meine Anwendungen grundsätzlich ein spez. Form-Design mitgeben möchte.

Dann erstelle ein entsprechendes Basis-Form nach deinen Wünschen und leite alle weiteren Forms von diesen ab (unter Neu - Delphi-Projekte - Vererbbare Elemente). Mache ich in vielen Anwendungen schon seit Jahren so.

mbulm1 25. Nov 2018 12:59

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1419121)
Zitat:

Zitat von mbulm1 (Beitrag 1419112)
Hintergrund ist - dass ich für meine Anwendungen grundsätzlich ein spez. Form-Design mitgeben möchte.

Dann erstelle ein entsprechendes Basis-Form nach deinen Wünschen und leite alle weiteren Forms von diesen ab (unter Neu - Delphi-Projekte - Vererbbare Elemente). Mache ich in vielen Anwendungen schon seit Jahren so.

Sorry bitte - wo finde ich ein Beispiel dazu?
Geht das Ganze auch bei Lazarus?
Danke vorab!

mschaefer 25. Nov 2018 13:06

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Ja prinzipiell geht das, man muss doch immer wieder von Hand eingreifen. Die IDE hat halt das Template Konzept

Template Konzept

Bei Ableitungen und Erweiterungen via Codehelper ist Funktionalität in Form von Funktionen und Prozeduren gut einzusetzen. Aber bei allem was mit visuellen Komponenten zu tun hat, habe ich letztlich immer Probleme gehabt, wenn auf abgeleitete per Formdesigner Komponenten abgelegt oder gelöscht wurden.

Grüße Martin

Der schöne Günther 25. Nov 2018 13:47

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Auf jeden Fall wie Uwe sagt, das ist immer das allererste was ich in einem VCL-Projekt mache das keine Wegwerf-exe ist.

mbulm1 25. Nov 2018 14:07

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Zitat:

Zitat von mbulm1 (Beitrag 1419112)
Sorry bitte - wo finde ich ein Beispiel dazu?
Geht das Ganze auch bei Lazarus?
Danke vorab!

Wie geht das Ganze bei Lazarus?
Gibt es gute Videos oder Tutorials dazu?

CCRDude 25. Nov 2018 15:10

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Ich mache das auch in Lazarus häufig. Allerdings nur mit "unsichtbaren" Erweiterungen, da dann einfach:

1. Eigene Unit einbinden.
2. Ableitung von = class(TFrom) auf class(TMeineFormAusUnit) abändern.

Damit erledige ich Krams wie einen automatisch in's Systemmenü eingebundes About-Fenster, ein neues Event das erst nach Anzeigen der Form getriggert wird, Zugriff auf XP/Vista/Win7/Win10-Erweiterungen, die in Delphi noch nicht Einzug gehalten hatten, als ich zuletzt damit gearbeitet habe (z.B. Progress Bar im Taskbar-Icon).

Templates sind in meinen Augen etwas anderes, da von Templates kopiert statt ererbt wird. Templates gibt es auch in Lazarus.

Um in Lazarus auch visuelle Form-Teile zu übernehmen, müsstest Du die eigene Form vermutlich in ein Package packen und registrieren. Oder halt dynamisch erzeugen und zur Designzeit darauf verzichten.

TraumTaenzerDieter 25. Nov 2018 15:36

AW: TForm - ist es möglich diese Klasse zu vererben und zu erweitern ...
 
Auch die Ableitung einer Form mit visuellen Elementen
ist in Lazarus problemlos möglich.
Erstelle eine Form mit allem was Du als Basis haben möchtest,
binde sie in Dein Projekt ein und erzeuge dann eine abgeleitete Form per
Datei -> Neu -> abgeleiteter Punkt -> abgeleitete Projekt-Komponente
(war für mich einfacher als Templates & Co)


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz