Der Aufwand ist ein bischen komplexer, lohnt sich aber.
1. überschreibe Methode .Loaded; deiner Komponente
2. schreibe eine Methode wie .LoadImage;
3. wenn sich der FileName ändert rufe .LoadImage; auf
4. in Metode .Loaded; rufe .LoadImage; auf
5. in Methode .LoadImage; nun folgendes
Delphi-Quellcode:
if csLoading in ComponentState then Exit;
... blabla hier Bild laden
Jedesmal wenn eine Komponente aus einer
DFM geladen wird oder durch den
OI kopiert wird, steht ComponentState auf csLoading. Nach diesem Streaming der
VCL wird für alle Komponenten die dynamische Methode .Loaded; aufgerufen. Das ist der ideale Ort um nun dein Image zu laden, da sichergestellt ist das abhängige Properties deiner Komponente alle korrekt initialisiert wurden.
Gruß Hagen