![]() |
Probleme beim Ausrichten von Elementen unter Delphi2007
Hallo Zusammen,
ich bin gerade dabei ein größeres Projekt von Delphi7 auf Delphi 2007 zu portieren. Dabei habe ich jetzt z.B. festgestellt, dass Elemente nicht mehr so augerichtet werden wie unter D7. Z.B. habe ich eine Combobox, die am unteren Rand vor der StatusBar beim Start des Programmes dort platziert wird, mit Werten gefüllt, aber nicht angezeigt wird. Durch einen Doppelklick auf die StatusBar sollte diese ComboBox aktiviert und direkt oberhalb der StatusBar angezeigt werden. Das hat auch bisher alles einwandfrei funktioniert! Hier der Code wie die Box ausgerichtet wird: cbDatenPath.Top := StatusBar.Top - cbDatenPath.Height; Ausgegeben wird die Box jetzt irgendwo in der Mitte des Bildschirms. Weiss vielleicht jemand was da nicht mehr passen könnte? Grüße Andi |
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Was ist denn der Parent der ComboBox?
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
wo seh ich das denn schnell wieder? Liegt auf jedenfall auf dem MainForm
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Ist eine Eigenschaft.
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Gibt zwar ParentColor, ParentFont usw. Parent finde ich nicht
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Liste der Anhänge anzeigen (Anzahl: 1)
Nicht im OI. Wird den die Kompo dynamisch erzeugt?
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Sie wird nicht dynamisch erzeugt! Habe sie auf dem FMain abgelegt und richte Sie beim Start aus, damit sie bei jeder Bildschirmauflösung richtig platziert wird.
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
was mir noch einfällt... der left-Wert stimmt nur die y-Ausrichtung nicht!
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Liste der Anhänge anzeigen (Anzahl: 1)
Hab mal ein Testprogramm geschrieben. Hier funktioniert es
Delphi-Quellcode:
procedure TForm3.FormCreate(Sender: TObject);
begin ComboBox1.Top := StatusBar1.Top - ComboBox1.Height; end; |
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
da stimmt was anderes nicht, habe gerade mal debuggt und festgestellt das StatusBar.Top nur den Wert 440 enthält, obwohl ich ne Auflösung von 1024x768 habe.
An was kann denn das liegen? |
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Liegt den die Statusbar direkt auf der Form?
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
ich glaube jetzt komme ich der Sache ein wenig näher...
Meine Form hat in der Entwicklungsumgebung einen "ClientHeight"-Wert von 464. Ich habe "windowState=wsmaximize" gesetzt, damit die Form mit voller Größe startet. Scheinbar bekommt das Programm den neuen Wert nicht mehr mit... |
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Du musst natürlich auf die Größenänderung reagieren
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Ich gebe ja als erstes das Hauptfenster mit wsmaximized aus und positioniere dann erst die ComboBox. Zu diesem Zeitpunkt müssen doch die abgefragten Height/Weight-Werte des Parent-Fensters schon richtig zurückgegeben werden. Aber da hat sich scheinbar gegenüber D7 was geändert.
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
In welcher Methode positionierst du?
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
in der FormCreate. Habe es jetzt auch mal in der FormActivate probiert, geht auch nicht
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
Versuch es mal in .onResize
|
Re: Probleme beim Ausrichten von Elementen unter Delphi2007
ja supi, das wars, jetzt funktioniert es wieder! Hat sich wohl was geändert gegenüber D7.
Danke Dir für die Hilfe!! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz