qdockwindow & qhboxlayout

Alles rund um die Programmierung mit Qt
Antworten
qtagent
Beiträge: 19
Registriert: 28. Mai 2007 21:36
Wohnort: Schwiiz | Schweiz | Switzerland | Suisse | Svizzera | Svizra

qdockwindow & qhboxlayout

Beitrag von qtagent »

hi

ich habe mit dem qt-designer ein QMainWindow mit einiegen widgets gebaut, davon drei QToolButton's die mittels "Lay Out Horizontally" durch ein HBox layout umrahmt sind und ein QListView.
soweit ich weis ist ein QDockWindow nicht mit dem qt-designer realisierbar :shock:, weshalb ich es manuell erstellt habe, wobei die drei QToolButton's im HBox layout oben links des QDockWIndow sein sollten und das QListView unterhalb den drei QToolButton's bzw. des HBox layout.
dass mit dem QListView hab ich hinbekommen :), doch das mit den drei QToolButton's im HBox layout nicht :(, ich weis nicht wie ich das HBox layout in das QDockWindow hineinbringe :?:.

hier mein aktueller code:

Code: Alles auswählen

unsigned char form::init(void){
	...
	tree=new QDockWindow(this);
	tree->setCaption(QTranslator::tr("tree"));
	tree->setCloseMode(QDockWindow::Always);
	tree->setOrientation(Qt::Vertical);
	tree->setResizeEnabled(true);
//	fehlende QToolButton im HBox layout code... :?:
	treeListView->reparent(tree,tree->geometry().topLeft());
	tree->boxLayout()->addWidget(treeListView);
	addDockWindow(tree);
	...
}
im attachment ist ein bsp. bild, wie das am ende aussehen soll.

thanks

qtagent
Dateianhänge
sample.png
sample.png (4.83 KiB) 2099 mal betrachtet
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Probier doch mal ein solches Layout im Designer zu erstellen. Diesen Code kannst du dann als Vorlage für dein QDockWidget verwenden.
qtagent
Beiträge: 19
Registriert: 28. Mai 2007 21:36
Wohnort: Schwiiz | Schweiz | Switzerland | Suisse | Svizzera | Svizra

Beitrag von qtagent »

hi

die QToolButton's im QHBox hab ich ja im qt-designer hinbekommen (Lay Out Horizontally), nur weis ich net wie ich das QHBox (wo ja die drei QToolButton's drinn sind) in das QDockWindow hinein bekomme.

beim obigem bild, "sample" hab ichs mittels einem QFrame bemacht, also die drei QToolButton's in ein QFrame eingefügt und durch:

Code: Alles auswählen

	treeFrame->reparent(tree,tree->geometry().topLeft());
	tree->setWidget(treeFrame);
ins QDockWindow hineinbekommen. doch wäre es gut, wenn es ohne QFrame geht, also hab ich QFrame entfernt und die QToolButton's eben mittels "Lay Out Horizontally" in ein QHBox layout eingefügt. doch wie kommt so ein HBox mit den QToolButton's inne in das QDockWindow rein? ein reparent gibts ja bei QHBox net :(

im qt-designer wird das QHBox layout wo die drei QToolButton's drinne sind als QHBox angezeigt, im source code als QHBoxLayout.

INFO! ich benutze: freebsd 6.2, kdevelop 3.3.4 und c/c++ mit qt 3.3.6.

thanks

qt agent
Zandru
Beiträge: 84
Registriert: 29. Mai 2007 15:35

Beitrag von Zandru »

bau doch einfach dein dockwidget als eigenes Widget im Designer, und setze das fertige Widget dann als dockwidget.
Antworten