Das funktioniert unter Windows auch recht gut, leider nur dann nicht, wenn die Anwendung maximiert ist. Muss ich das noch manuell selber dazu speichern?
Ja klar, ist auch besser so. Wenn Qt die Geometry sichern würde, dann hättest Du beim Restore kein maximiertes Fenster, sondern ein Fenster auf Desktopgröße aufgezogen. Wenn Du das Maximized-Flag separat sicherst und beim Restore entsprechend reagierst, dann kann der Anwender wenigstens wieder zur Ursprungsgröße zurück.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Danke für Deine schnelle Antwort. Leider gibt mir showMaximized(); genau dasselbe, wie wenn ich das Fenster maximiere und dann den maximierten Zustand abspeichere. Es bleibt mir lediglich die Möglichkeit, das Fenster jedes Mal von Hand zu maximieren. Was Qt da als "maximieren" versteht, ist für mich kein richtiges "Maximieren". Leider.
Also bei mir funktioniert es zumindest mit einem getesteten Programm, weiß aber nicht mit welcher Qt-Version das jetzt compiliert wurde. saveState und restoreState werden immer ausgeführt, zusätzlich in meinen Sourcen steht nur:
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Vielen Dank für Deine Mühe. Ich bekomme das Fenster auch "maximiert" dargestellt (sprich, der Button in der Mitte lautet nun "Verkleinern", wenn ich die Maus über ihn halte), nur irgendwas scheint dabei nicht zu funktionieren.
Könnte an meinem Grafiktreiber liegen, könnte an Windows Vista SP1 liegen, könnte auch an Qt 4.4 liegen. Werde das mal auf einem Windows XP System testen.
gentlesea hat geschrieben:
Könnte an meinem Grafiktreiber liegen, könnte an Windows Vista SP1 liegen, könnte auch an Qt 4.4 liegen. Werde das mal auf einem Windows XP System testen.
Bei mir funktioniert das Speichern und Wiederherstellen der Fensterdarstellung auch wenn das Fenster maximiert wurde. Mein Hauptfenster ist ein QMainWindow, wobei ich im Konstruktor nach dem restoreGeometry() die show()-Methode aufrufe. Ich verwende Qt 4.4.0, VS2005 SP1 und WinXP SP2.