Hi sven
Zitat:
Öffne ich nun mein Projekt erneut und möchte diese Frames bearbeiten...
Welchen Frame? Du weisst ja: für jeden Frame, den du auf einer Form oder einem anderen Container platzieren willst, brauchst du einen 'BasisFrame'. Ausser, du hast vom Basisframe mehrere Instanzen... Dieser Basisframe ist bei mir immer gleich gross.
Etwas anderes ist es mit der Frameinstanz - auf der Mainform ist bei mir nicht genügend Platz, um die Frameinstanz in der geerbten Grösse darzustellen - also wird er schmäler dargestellt. Was bei mir da nicht sichtbar ist, sind allerdings gerademal die Bildlaufleisten der Frameinstanz.
Hmm... Zum Verständnis der Frames: Nur der Basisframe hat im Normalfall eine eigene
Unit. Die Instanz erbt sämtliche Felder und Methoden des Basisframes, hat aber selber keine
Unit.
Muss ein Feld oder eine Methode der Instanz anders belegt werden, als das vererbte Feld/ die vererbte Methode, muss dies per Code in der
Unit des Containers geschehen. Andersherum könnte es aber ausreichen, wenn du, nachdem du Komponenten der Instanz verschoben hast (deren Positionen also von den vererbten abweichen), die Anwendung kompilierst - andernfalls müsstest du die Anwendung neu erstellen (Projekt->Projekt neu erstellen). Wenn du nur kompilierst, kompiliert Delphi nur die Dateien, die sich seit dem letzten Start geändert haben.
Zitat:
Nur der Basisframe hat im Normalfall eine eigene
Unit
Was ist denn der 'Abnormalfall'? Das ist was, das ich selbst noch nie gemacht habe und so nur aus der Help kenne: Du kannst Frames auch anstelle von Formularen nutzen. Dazu erstellst du wie gewohnt den Basisframe. Von diesem erstellst du dann eine Instanz auf einer Form (Toolpalette->Frames und aus der Liste auswählen). Nach Aussage der Help kannst du jetzt die Form löschen - der Frame und die
Unit der Form bleiben erhalten. Es sieht zwar jetzt so aus, als ob die Frameinstanz auch eine eigenen
Unit hätte, aber die ist im Grunde genommen jene der gelöschten Form. Wie gesagt: Selbst hab ich das noch nie gemacht; lediglich die Help habe ich so verstanden.
Zitat:
Das kann ich (mit D2007) nicht recht nachvollziehen. Wir verwenden Frames auch seit einigen Jahren und haben keine großen Probleme damit.
Da sich Frames doch etwas von Formularen unterscheiden, hatte ich längere Zeit öfters Mühe damit, aber das hat sich geändert - Sie sind inzwischen ein willkommener Bestandteil zur Modularisierung und damit der besseren Übersicht. Ach ja - das OnCreate-Event des Formulars (zB) ruft lediglich dessen Constructor auf...
Gruss
Delbor