Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Problem beim öffnen eines Frames (https://www.delphipraxis.net/161801-problem-beim-oeffnen-eines-frames.html)

news2swen 21. Jul 2011 13:09

Problem beim öffnen eines Frames
 
Hallo zusammen

ich habe mehrere Frames in seperaten Dateien abgelegt (Standard eben). Diese Frames enthalten u.a. Panels, Grids usw..
Im Entwurfsmodus habe ich diese anständig positioniert und verankert. Öffne ich nun mein Projekt erneut und möchte diese Frames bearbeiten, so öffnet er das Frame viel kleiner als wie ich es abgespeichert habe und die Komponenten welche darauf platziert waren sind nun ausserhalb des Frames. Nun muss ich die Komponenten über den Objektinspektor wieder im sichtbaren Bereich positionieren und von der Größe her so äöndern, dass man sie komplett sieht. Danach kann ich alles wieder auf die gewünschte Größe andern und auch positionieren. Das wird auf Dauer nervig, da man diese Dateien ja öfters im Projektleben öffnen muss.
Gibt es evtl irgendwelche Einstellungen, welche dieses eigenartige Verhalten verindern?

Entwicklungsumgebung ist Delphi 2010 Enterprise

viele grüße
Swen

Bummi 21. Jul 2011 15:00

AW: Problem beim öffnen eines Frames
 
Sorry für OT, aber Frames waren , sind und bleiben IMHO böse.
Wegen der ständigen Probleme diverser Art mit Frames habe ich schon vor 10 Jahren umgestellt auf Formulare die zur Laufzeit einen Parent zugewiesen bekommen.

uligerhardt 21. Jul 2011 16:14

AW: Problem beim öffnen eines Frames
 
Zitat:

Zitat von Bummi (Beitrag 1112899)
Sorry für OT, aber Frames waren , sind und bleiben IMHO böse.
Wegen der ständigen Probleme diverser Art mit Frames habe ich schon vor 10 Jahren umgestellt auf Formulare die zur Laufzeit einen Parent zugewiesen bekommen.

Das kann ich (mit D2007) nicht recht nachvollziehen. Wir verwenden Frames auch seit einigen Jahren und haben keine großen Probleme damit.

Delbor 30. Jul 2011 14:15

AW: Problem beim öffnen eines Frames
 
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


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