QWidget :: setLayout: Es wird versucht, QLayout auf das Widget "" zu setzen, das bereits ein Layout hat
Ich versuche, das Layout eines Widgets manuell über Code festzulegen (nicht in Designer), aber ich mache etwas falsch, weil ich diese Warnung erhalte:
QWidget :: setLayout: Es wird versucht, QLayout "" für Widget "" festzulegen, das bereits ein Layout hat
Und auch das Layout ist durcheinander (das Etikett befindet sich oben statt unten).
Dies ist ein Beispielcode, der das Problem reproduziert:
<code>Widget::Widget(QWidget *parent) : QWidget(parent) { QLabel *label = new QLabel("Test", this); QHBoxLayout *hlayout = new QHBoxLayout(this); QVBoxLayout *vlayout = new QVBoxLayout(this); QSpacerItem *spacer = new QSpacerItem(40, 20, QSizePolicy::Fixed); QLineEdit *lineEdit = new QLineEdit(this); hlayout->addItem(spacer); hlayout->addWidget(lineEdit); vlayout->addLayout(hlayout); vlayout->addWidget(label); setLayout(vlayout); } </code>