Delphi-PRAXiS

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 Komponentenverhalten zur DesignTime (https://www.delphipraxis.net/162045-komponentenverhalten-zur-designtime.html)

stahli 3. Aug 2011 11:23

Komponentenverhalten zur DesignTime
 
Ich habe nicht sichtbare Komponenten (von TComponent abgeleitet), die Daten kommunizieren (Bindung Data-GUI).

TMyFile.Activate veranlasst durch TMyFile.LoadFromFile das Laden von Daten.
Nach dem Laden der Datei werden alle erzeugten TMyFormCtrl über die neuen Daten informiert.
TMyFormCtrl stellt dann die für die GUI (genauer: für alle Controls des Formulars, auf dem es sich befindet) eine Verbindung zu deren spezifischen Daten her.

Zur Laufzeit funktioniert das perfekt. Zur Designzeit allerdings nur eingeschränkt.
Dies möchte ich aber gern auch gewährleisten, so dass auch schon zur DesignTime Live-Daten dargestellt werden können.

Ich hatte gestern nur wenig Zeit, aber das Problem liegt wohl daran, dass die Formulare in der IDE erst erzeugt werden, wenn sie dargestellt werden.

Die TMyFormCtrl erhalten jedenfalls nicht immer die Information über neue Daten.

Gibt es eine Möglichkeit, zu erkennen, ob das Icon meiner TMyFormCtrl in der IDE gezeichnet wurde? Dann könnte ich an der Stelle die aktuellen Daten abfragen und weiter leiten... Das würde mein Problem lösen.

chaosben 3. Aug 2011 11:49

AW: Komponentenverhalten zur DesignTime
 
Da deine Komponenten ja in einem Package liegen, könntest du die initialization-Routine einer Unit nehmen um schon mal ein paar Daten zu laden.

Das beim Zeichnen des Icons zu machen ist imho unmöglich, das das Laden der Icon-Resource nicht überwachbar ist.


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