Frames gegen Änderungen sperren
15. Sep 2008, 13:58
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.
|