qt widget zur laufzeit im fenster austauschen
Hallo, ich stehe im Moment auf dem Schlauch und komme nicht weiter. Nachdem Ihr mich auf mein Problem aufmerksam gemacht habt ( mit exec() usw) Dachte ich mir es ist Zeit mein Fensterlayout zu überarbeiten. Ich dachte mir, es ist besser nur ein Fenster (QMainWindow) zu erzeugen und darin immer nur ein "Layout" auszuwechseln das den Inhalt meiner bisherigen Fenster enthält. Da das Fenster ja nur ein Layout zur gleichen Zeit enthalten kann, entfällt auch der Zwang für Modale Fenster usw. Aber: Irgendwie bringe ich es nicht hin ein Layout in einem Fenster zur Laufzeit auszutauschen. Nehmen wir mal an, ich habe ein Layout mit 4 Buttons. Der Benutzer macht nun eine Auswahl wodurch ich die 4 Buttons durch ein anderes Layout mit 10 Tasten (und komplett anderer Funktion) ersetzen möchte. Das müsste doch möglich sein ? Das bisherige Layout sollte hierbei, sofern möglich, nicht deleted werden, weil es gegen später wieder ins Hauptfenster eingesetzt werden soll. Das spart mir das ganze Fenster auf und zumachen und das handling wird einfacher. Ich dachte mit add(QWidget) und remove(QWidget) müsste das gehen ? Kann mir einer mal nen Tipp geben ? In der QT Doku bin ich nicht fündig geworden. Danke Juergen
Hallo Jürgen, Juergen Sachs wrote:
Ich dachte mit add(QWidget) und remove(QWidget) müsste das gehen ?
Einfach zu Beginn alle erzeugen. Evtl in einem Widgetstack, siehe Doku zu diesem. Oder alle nicht benötigten mit hide() ausblenden und das gewünschte mit show() anschalten. Viele Grüße, Tilo -- Tilo Riemer & Frank Hemer GbR mailto:support@lincvs.com http://www.lincvs.com Dresden, Germany
Am Sonntag, den 13.11.2005, 15:27 +0100 schrieb Tilo Riemer: Hallo Tilo, Also das mit dem Widgetstack sieht vielversprechend aus. Sehe ich mir mal an. Danke Juergen
Hallo Jürgen,
Juergen Sachs wrote:
Ich dachte mit add(QWidget) und remove(QWidget) müsste das gehen ?
Einfach zu Beginn alle erzeugen. Evtl in einem Widgetstack, siehe Doku zu diesem. Oder alle nicht benötigten mit hide() ausblenden und das gewünschte mit show() anschalten.
Viele Grüße, Tilo
-- Tilo Riemer & Frank Hemer GbR mailto:support@lincvs.com http://www.lincvs.com Dresden, Germany
participants (3)
-
Juergen Sachs
-
Jürgen Sachs
-
Tilo Riemer