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 Frames gegen Änderungen sperren (https://www.delphipraxis.net/120691-frames-gegen-aenderungen-sperren.html)

bernau 15. Sep 2008 12:58


Frames gegen Änderungen sperren
 
Hi,


ich mache in meinem Programm (>200 Forms >100 Frames) ausgiebig von Frames gebrauch.

Nun kann es sein, daß in einem Frame eine Komponente nicht mehr gebraucht wird (z.B. ein popeliges TLabel). Dieses Label wird also herausgelöscht. Oder es wird einfach umbenannt, weil ich z.B. im Namen einen Rechtschreibfehler gemacht habe und ich diesen im Nachhinein korrigieren möchte.

Nun das Problem: Wenn das Frame auf eine Form gesetzt wird und ich natürlich auch mal die Größe des Frames ändere, dann wird zu diesem Label die Position im Parentform neu gespeichert. Soweit ist das Problem noch nicht vorhanden. Wenn ich aber das Label vom Frame lösche, dann bekomme ich zur Laufzeit des Programmes immer die Fehlermeldung, daß das Label nicht mehr vorhanden ist, wenn ich eine Form aufrufe, auf der das betreffende Frame gesetzt ist. Ich muss also in Delphi erst einmal alle Forms öffen, auf diesen dieses Frame gesetzt wurde. Damit werden dann die Properties, die zum Label im Parentform "automatisch" gesetzt wurden, wieder entfernt. Bei der Menge an Forms und Frames kann es natürlich sein, daß mann auch mal eine Form übersieht. Der Compiler zeigt leider keine Fehlermeldung. Der Fehler tritt leider erst zur Laufzeit auf.

Gibt es eine Möglichkeit ein Frame gegen Änderungen zu sperren, damit keine Properties des Frames im Parentform gespeichert werden. Oder gibt es eine Möglichkeit dem Compiler beizubringen, daß er mich informiert, wenn so etwas auftritt.

omata 15. Sep 2008 21:48

Re: Frames gegen Änderungen sperren
 
Lösche vor dem Kompilieren alle DCU-Dateien in deinem Projektverzeichnis. Dann muss alles neu erzeugt und auch ein Fehler sichtbar werden.


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