Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Frame überschreiben (https://www.delphipraxis.net/56205-frame-ueberschreiben.html)

franktron 2. Nov 2005 10:03


Frame überschreiben
 
Wie kann ich ein vorhandenes Frame überschreiben.

Also ich hab eine Frame z.b. FR_lager, so und nun habe ich genau das gleiche Frame in einer DLL und will dieses Laden und dann das Frame in meiner Form mit dem in meiner DLL überschreiben.

Geht das überhaupt und wenn ja wie.

sh17 3. Nov 2005 05:47

Re: Frame überschreiben
 
Meinst Du "überschreiben" jetzt im Objekt-Orientierten Sinne?

Also Du hast ein Frame FR_lager und noch ein Frame FR_lager in der DLL?

franktron 3. Nov 2005 07:38

Re: Frame überschreiben
 
Zitat:

Zitat von sh17
Meinst Du "überschreiben" jetzt im Objekt-Orientierten Sinne?

Also Du hast ein Frame FR_lager und noch ein Frame FR_lager in der DLL?

Ja hab ich und zwar wahr meine Idee mein Frame in der Form schon mla schön einzupassen (wegen Layout) und dann während der Laufzeit durch das richtige Frame (das in der DLL) zu ersetzen.

sh17 3. Nov 2005 12:20

Re: Frame überschreiben
 
Hmm, also wenn die beiden Frames wirklich vom gleichen Klassentyp sind, wird es denk ich nicht gehen. Da müsste ja schon die RTTI auf den Bauch fallen.

Was bedeutet denn Layout anpassen? Was unterscheidet denn die beiden Frames eigentlich.

Ich muss mal so Fragen, so bekomme ich vielleicht die Vorstellung von einer anderen Lösung.

franktron 3. Nov 2005 12:32

Re: Frame überschreiben
 
Das hat folgenden Grund
1. Ich muss ja in meiner Form (wo das Frame drin ist) auf das Frame zugreifen würden warscheinlich auch Dynamisch gehen
2. Ich muss ja das Layout der Form anpassen und das ist es schon gut das Frame zu sehen.

Deshalb is das Frame auf der Form un das in der DLL Fast identisch,ein paar sachen können sich änder das Frame gehört zu einer
Plugingeschichte also es gibt mehrere DLL's somit auch mehrere Frames die alle Fast gleich sind aber eben nur Fast.

sh17 3. Nov 2005 12:42

Re: Frame überschreiben
 
Ich hoffe, ich versteh das alles richtig.


Was ist nun, wenn Du eine Framebasisklasse einrichtest, die über die Eigenschaft Höhe und Breite verfügt. Die wirst Du ja wahrscheinlich in eine Art Basis-DLL compilieren, die die Hauptanwendung und die PlugIns kennen.

Im der Hauptanwendung legst Du die Variable von die Hauptklasse an und erzeugst die konkreten DLL-Frames auf diese Variable. So kannst Du auf Höhe Breite zugrreifen, ohne konkret etwas von der DLL-Frameklasse zu wissen.

So würd ich rangehen, ich habe jetzt aber noch kein konkretes PlugInSystem geschrieben, da gibts bestimmt noch mehr Ecken.

franktron 3. Nov 2005 12:47

Re: Frame überschreiben
 
Ja aber nur auf die eigenschaften von TFrame nicht auf den Rest aber ich könnte vieleicht ein Frame in der Hauptanwendeung erstellen und vor dem Laden des DDL-Frames das Form-Frame löschen dann sollte das vieleicht gehen oder ?

sh17 3. Nov 2005 12:54

Re: Frame überschreiben
 
ja,ne, wie?

(mal vorweg, könntest Du mal bitte ein paar Satzzeichen in Deine Texte einstreuen? Würde sich dann besser lesen lassen! :wink: )

Was hat den das einfache Frame für wichtige Layouteigenschaften? Um was für Layouteigenschaften geht es eigentlich, das Du so ein Frame benötigst?

So ganz versteh ich den Sinn noch nicht. :wall:

franktron 3. Nov 2005 13:04

Re: Frame überschreiben
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also auf dem Frame ist eine Grid ein paar Combos und ein paar Panels die Grid hat eine bestimmte breite und das ist das wichtige für mich. Da ich mich an beim Formlayout an die Gridbreite anpasse und die höhe das gesamten ist auch nicht unwichtig.

Schau mal das Bild im Anhang.

sh17 3. Nov 2005 13:08

Re: Frame überschreiben
 
so, d.h., wenn Du die Frame aus der DLL mit dem Grid erstellst, hat diese Grid eine bestimmte Breite.

Und diese Breite soll auf das Elternformular, wo Du das Frame einbettest, übertragen werden. Dies kann von Frame(Grid) zu Frame(Grid) variieren.

Und wenn Du die spezielle Frame erstellst, weist Du ja nix von dem Grid, da Du die konkrete FrameKlasse aus der DLL nicht kennst?

Alles soweit richtig?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:15 Uhr.
Seite 1 von 2  1 2      

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