Seite 1 von 1

Größenverschiebung von Widgets

Verfasst: 31. Januar 2009 23:21
von CLRS530
Ich habe mehere Widgets (Tree Views), die ich in einem Grid Layout oder ähnlichem unterbringen möchte und diese sollen in ihren einzelnen Größen angepasst werden.
Also sowas wie 2 treeviews nebeneinander, wo ich die linke vergrößern möchte. Natürlich ich als user während das Programm läuft.

Ich habe mir jetzt alle Container angesehen, aber komischweise nichts für diese, in meinen Augen doch recht triviale Aktion, gefunden.

Verfasst: 31. Januar 2009 23:33
von The User
Wenn mans sich im Designer anschaut, klappts auch genauso zur Laufzeit. ;)
Klappt über die SizePolicy.
Wenn du irgendwas richtig besonderes haben willst, kannst du auch heightForWidth implementieren.

Viele liebe Grüße
The User

Verfasst: 1. Februar 2009 00:05
von CLRS530
Hi danke für die Antwort.
Es erscheint mir nicht so, also ob du mich missverstanden hast, aber ich habe tatsächlich vorher schon einmal ein wenig mit sizePolicy gespielt, da wie jetzt ist nichts sinnvolles rausgekommen.

Vielleicht könntest du mir da noch ein wenig Hilfestellung geben. Ich möchte, wenn ich an den Rand des TreeView komme dieses in der Brite oder höhe anpassen können, da daneben ein weiteres TreeView, was dann demensprechend kleiner wird. Ich meine so etwas schon in Visual Studio gesehen zu haben. Dort ist es so ein Doppelseitiger Pfeil, den man zwischen die Widgets setzten kann. Hier suche ich so etwas vergebens.

Verfasst: 2. Februar 2009 02:53
von CLRS530
OK, dann beantworte ich meine Frage hier nun also selbst. Man kann dieses Problem mit QDockWidget lösen und wohl auch nur damit.
Wer die docking Sachen wie ich nicht weiter haben möchte (bis jetzt), kann mit

Code: Alles auswählen

QDockWidget *dock = new QDockWidget(this);
dock->setFeatures(QDockWidget::NoDockWidgetFeatures);
dock->setTitleBarWidget(new QWidget);
dock->setWidget(new QTreeView(this));
alles inklusive der Titelleiste des Dockingelements wegbekommen und es bleibt die gewünschte verschiebbarkeit :)