Seite 1 von 1

Wie zentriert man Widgets in einem Fenster

Verfasst: 24. Juli 2011 12:04
von revellix
Hallo.

Ich habe das folgende Problem:

Ich möchte ein QTabwidget erstellen und in jeden Tab dann meine Widgets einfügen (logisch). Mein erstes Widget ist im Vollbildmodus aber nicht so groß wie das Fenster in dem es dargestellt werden soll. Ich möchte also, dass das Widget zentriert in dem Fenster dargestellt wird. Es bleibt leider immer in der oberen linken Ecke. Ich habs jetzt mit QStackedWidget versucht... folgender code:

Das Widget inAOrifice wird dem stackWidget übergeben. stackLayout wird dem SubWindow gegeben. In der Form zeigt er mir jetzt ein leeres SubWindow an. Ich steh aufm Schlauch.

Code: Alles auswählen

MainChild::MainChild(QWidget *parent) : QMdiSubWindow(parent)
{
    this->setAttribute(Qt::WA_DeleteOnClose);

    inAOrifice = new inputAOrifice(this);
    tabWidget = new QTabWidget;
    stackLayout = new QVBoxLayout;
    stackWidget = new QStackedWidget;

    stackWidget->addWidget(inAOrifice);
    stackLayout->setAlignment(stackWidget,Qt::AlignCenter);
    this->setLayout(stackLayout);

}
Habe auch schon anders rumprobiert. Geht iwie alles nicht. Jemand eine Idee ?

Re: Wie zentriert man Widgets in einem Fenster

Verfasst: 25. Juli 2011 07:48
von Exasperation
Mach das hier:

Code: Alles auswählen

bool test = stackLayout->setAlignment( stackWidget, Qt::AlignCenter );
und schau, was in in test drin steht. In der Doku von QLayout nachschauen was das bedeutet, Fehler erkennen, mit der Handfläche auf die Stirn schlagen. ;)