Seite 1 von 1

QWidget Layoutfrage...

Verfasst: 21. Dezember 2005 14:40
von Davidave
Hallo liebe Community.
Ich schreibe euch, weil ich einige Probleme mit dem Layout eines QWidgets habe.
Ich benutze QT 3.3 unter Suse 9.2


Folgendes Problem:
Ich habe ein Klasse, die von QWidget erbt.
In ihr soll ein Splitter das Widget in zwei Teile teilen.
Auf der linken Seite soll ein ScrollView sein, der ein QLabel mit Bild enthaelt. Rechts sollen mehrere Label Informationen anzeigen.
 
Wenn sich das Fenster oeffnet, hat der ScrollView eine feste Groesse und laesst sich nicht vergroessern. Wie auf dem Screenshot ( layout1.jpg) zu sehen ist, sind die Groupboxes abgeschnitten.

Wenn ich das Widget an der unteren rechten Ecke geklickt halte und vergroessere, soll sich aber bitte auch das ScrollView anpassen (layout2.jpg)

Es scheint, als seien die Elemente nicht im QWidget verankert.
Habt ihr ein Ahnung woran das liegen kann?

Danke vorweg!

Hier mein Code. In einer Funktion init():

Splitter = new QSplitter(this);
ScrollView = new QScrollView(Splitter);
LabelWidget = new QWidget(Splitter);
mainLayout = new QVBoxLayout(LabelWidget);

label = new QLabel(ScrollView);
label->resize(SizeX, SizeY); //das Label soll so groß sein, wie die geladene Pixmap.
ScrollView->addChild(label);

bgroup = new QGroupBox(5, Qt::Vertical, "Classifier",LabelWidget);
SVMLabel = new QLabel(bgroup);
KernelLabel = new QLabel(bgroup);
ReLabel = new QLabel(bgroup);
BandwidthLabel = new QLabel(bgroup);
ThresholdLabel = new QLabel(bgroup);
.
.
.
//dann kommt eine andere Groupbox.
.
.
.
mainLayout->addWidget(bgroup);
mainLayout->addStretch(1);
mainLayout->setMargin(10);

ScrollView->setMinimumWidth(SizeX);
ScrollView->setMinimumHeight(SizeY);

Splitter->adjustSize();
this->adjustSize();
this->hide(); //zuerst soll das Widget versteckt sein, bis ich es später zeige.

Verfasst: 22. Dezember 2005 10:58
von Flachkoepper
Mahlzeit,

du musst in deinem Hauptwidget (das, in dem der Splitter sitzt) auch noch ein Layout erstellen. Diesem Layout weist du dann deinen Splitter zu -> fertig.

Viele Grüße,
Flachkoepper

Verfasst: 22. Dezember 2005 11:23
von Davidave
Wow, wenn das des Rätsels Lösung ist, dann danke ich Dir VIELMALS!

Verfasst: 22. Dezember 2005 16:27
von Davidave
Juhu, es klappt. Vielen Dank!

:D