QDockWidget - Breite laesst sich nicht aendern

Alles rund um die Programmierung mit Qt
Antworten
gboelter
Beiträge: 80
Registriert: 5. Dezember 2007 14:52
Wohnort: Davao City, Philippines

QDockWidget - Breite laesst sich nicht aendern

Beitrag von gboelter »

Moin!

Ich versuche mich seit geraumer Zeit daran, mein MainWindow um ein DockWidget zu erweitern. Grundsaetzlich auch kein Problem, das Dockwidget wird erstellt und funktioniert bis auf eine Kleinigkeit auch einwandfrei.

Was nicht funktioniert ist die Aenderung der Breite im angedockten Zustand. Der 'Griff' ist zwar da und erkennt auch das 'Anfassen' mit der Maus, aber die Breite laesst sich nicht aendern. Dabei ist es egal, ob ich das DockWidget im Designer erstelle oder aber von Hand einfuege. Sobald das DockWidget frei im Raum schwebt, klappt dagegen wieder alles.

Hier mal ein Auszug aus meinem Minimal-Code:

Code: Alles auswählen

    
QDockWidget *dockWidget;
QWidget *dockWidgetContents;

dockWidget = new QDockWidget( this );

dockWidget->setObjectName( QString::fromUtf8( "dockWidget" ) );
dockWidget->setWindowTitle( "Navigation" );
...

addDockWidget( static_cast<Qt::DockWidgetArea>( 1 ), dockWidget );
Was uebersehe ich hier?

Gruss
Guenther
Davao City, Philippines, Planet Earth, 28°C

Qt 4.8.1 for Linux/X11 - Open Source Edition for Application Development
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Re: QDockWidget - Breite laesst sich nicht aendern

Beitrag von franzf »

Ein minimales, kompilierbares Beispiel wäre nicht schlecht, damit wir das gleich ausprobieren können. Denn wenn ich mir hier ein minimales Beispiel zusammenzimmere geht es ohne Murren.
Spielst du vllt. mit komischen SizePolicies rum? Oder gibst du deinem Dock+centralWidget minimumSizes?
Und der static_cast da macht deinen Code nicht gerade leserlicher: schreib doch einfach "Qt::LeftDockWidgetArea" - ist kürzer und niemand muss erst in die Doku schauen, um zu sehen, was "1" jetzt ist....
gboelter
Beiträge: 80
Registriert: 5. Dezember 2007 14:52
Wohnort: Davao City, Philippines

Re: QDockWidget - Breite laesst sich nicht aendern

Beitrag von gboelter »

franzf hat geschrieben:Ein minimales, kompilierbares Beispiel wäre nicht schlecht, damit wir das gleich ausprobieren können. Denn wenn ich mir hier ein minimales Beispiel zusammenzimmere geht es ohne Murren.
Das stimmt schon, aber die paar Zeilen Code, die ich bereits eingefuegt hatte, waren zu dem Zeitpunkt der einzige Code, der sich auf das QDockWidget bezieht. Und wissen wollte ich eigentlich nur, ob ich da irgendeinen Wert vergessen habe.

Der Fehler lag aber ganz woanders. Aus grauer Vorzeit gab es im EventFilter einen Dreizeiler, der mein MousePressEvent kassiert hat. Den habe ich irgendwann mal fuer Testzwecke dort eingebaut und dann vergessen.

Stimmt, faellt unter Dumm gelaufen, trotzdem vielen Dank fuer Deine Antwort.

Gruss
Guenther
Guenther
Davao City, Philippines, Planet Earth, 28°C

Qt 4.8.1 for Linux/X11 - Open Source Edition for Application Development
Antworten