Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi wann werden uses von uses geladen? (https://www.delphipraxis.net/183213-wann-werden-uses-von-uses-geladen.html)

Gruber_Hans_12345 20. Dez 2014 08:01

Delphi-Version: 5

wann werden uses von uses geladen?
 
Ich wollte mal fragen, wie und ob man das abstellen kann

Ich habe für die meisten controls eine eigene Ableitung gemacht , vorallem damit ich diese später immerweider mal schneller austauschen kann gegen neuere oder andere.

zB.: mein Edit Control heisst TMyEdit wird abgleitet in aktuellen Fall von TElBtnEdit

wenn ich in einer unit das edit verwende dann gebe ich nur die my.controls.edit und alles passt
wenn ich das edit ins form ziehe, dann werden zusätzlich noch
, ElXPThemedControl
, ElEdits
, ElBtnEdit
als uses geladen, was natürlich dann in späterer folge dann blöd ist weil ich irgendwann dann die units wieder überall entfernen muss ....

gibts da einen grund dafür, und eine möglichkeit das zu verhindern?

Mavarik 20. Dez 2014 11:17

AW: wann werden uses von uses geladen?
 
Das aktuelle Form benötigt doch alle Felder deines TMyEdit.
Da diese nicht in Deiner Komponente enthalten sind, sondern nur in der anderen Unit, wird diese natürlich auch benötigt.

Mavarik

Bernhard Geyer 20. Dez 2014 11:31

AW: wann werden uses von uses geladen?
 
Zitat:

Zitat von Mavarik (Beitrag 1284168)
Das aktuelle Form benötigt doch alle Felder deines TMyEdit.
Da diese nicht in Deiner Komponente enthalten sind, sondern nur in der anderen Unit, wird diese natürlich auch benötigt.

Das diese Unit benötigt wird ist klar (sollte es jedenfalls sein).

Es geht darum das beim Hinzufügen zu einem Formular die u.g. Units zusätzlich in der Formularunit direkt referenziert werden.
Das macht es dann später schwieriger eine Implementierung durch eine andere zu ersetzen.

@Fragesteller:
Aber ich denke der Ansatz ist hier falsch. Wenn man hier etwas austauschbar gestellten will braucht man Pattern wie das Bridge oder Fassaden-Pattern.
So wie es jetzt ist hätte man Zugriff auf alle Properties und diese würden dann in der DFM entsprechend gespeichert. Ein Austausch wäre nicht mehr möglich da ja genau diese (Spezial-)Properties ja so ein anders Control nicht hat oder nur unter anderem Namen. Sinnvoll wäre m.E. dann ein TMyEdit das nur die gewünschten Properties bereitstellt und als Composit-Control ein entsprechende TElEdit hat. Nachteil ist hier u.U. das man dann mindestens 2 GUI-Handles benötigt um ein Edit zu haben.

Mavarik 20. Dez 2014 11:46

AW: wann werden uses von uses geladen?
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1284171)
Das diese Unit benötigt wird ist klar (sollte es jedenfalls sein).

War ein Teil der Frage... Jetzt noch verhindern:
Alle Propertys in der eigenen Unit wiederholen?

Mavarik

Sir Rufo 20. Dez 2014 12:08

AW: wann werden uses von uses geladen?
 
Eine Möglichkeit wäre ja auch einen Wrapper statt einer Ableitung zu benutzen, dann werden die Units nicht automatisch eingefügt, nur die vom Wrapper, aber das ist ja auch Grundvoraussetzung. :)

Gruber_Hans_12345 22. Dez 2014 13:23

AW: wann werden uses von uses geladen?
 
Um das Edit später austauschen zu können habe ich auch nur jene properties published gemacht die ich auch haben will (bzw stored) ... also ich schaue schon das auch nur die properties gepesichert werden die ich in meinem Controll speziell zur Verfügung stelle.

Dass muss ich mir dann noch mal überlegen welcher weg mir lieber ist, den 2 Handles möchte ich auch nicht unbedingt haben (ist ja dann bei jedem Controll so)
Dachte mir nur es gibt eventuell einen anderen weg ... aber ....


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:32 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