Seite 1 von 1

QToolBar mit mehreren Comboboxen

Verfasst: 25. August 2009 15:00
von kkilger
Hallo,

ich habe versucht, eine QToolBar mit mehreren Comboboxen nebeneinander zu programmieren (Font Selection, Font Size). Das eingebaute Layout der QToolBar ist augenscheinlich nicht fähig die Comboboxen so anzuordnen, dass sie nicht direkt aneinanderkleben. Als "Workaround" habe ich folgendes gemacht:

Code: Alles auswählen

void MainWindow::createToolBars() {
  ...
  fontToolBar = addToolBar(tr("F&ont"));
  emptyWidget = new QWidget(this);
  fontLayout = new QHBoxLayout(emptyWidget);
  fontLayout -> addWidget(fontComboBox);
  fontLayout -> addWidget(fontSizeEdit);
  emptyWidget -> setLayout(fontLayout);
  fontToolBar -> addWidget(emptyWidget);
  ...
}
Das funktioniert auch im Prinzip: die Comboboxen haben nun einen ausreichenden Abstand. Leider ist jetzt ein dicker Rand/Abstand drumherum, den ich nicht haben will.

Alternativ habe ich versucht, das Layout der QToolBar auszutauschen, duch:

Code: Alles auswählen

   fontLayout = new QHBoxLayout(this);
   delete fontToolBar -> layout();
   fontToolBar -> setLayout(fontLayout);
Hier stürzt das Programm ab, ich vermute mal wegen einem Speicherzugriffsfehler und dem delete.

Vielen Dank im Vorraus,
Kilian.

Verfasst: 25. August 2009 15:09
von archer
fontLayout->setMargin(0)