Frage

How can i add two child Widget objects in equal portion of QMainWindow.

MainWindow::MainWindow(QWidget *parent)
     : QMainWindow(parent)

{   TreeArea *ta= new TreeArea(this);
    TreeArea *ta1= new TreeArea(this);
.
.
.
  TreeArea::TreeArea(QWidget *parent) :
 QWidget(parent)
{
.
.
.
War es hilfreich?

Lösung

As e-zinc suggested you have to use layout. Say you want to insert two widgets into the mainwindow.

QHBoxLayout *layout = new QHBoxLayout;

QPushButton *button1 = new QPushButton("button1");
QPushButton *button2 = new QPushButton("button2");

layout->addWidget(button1);
layout->addWidget(button2);

setCentralWidget(new QWidget);
centralWidget()->setLayout(layout);

This will layout widgets horizontally and you will get this result: QHBoxLayoutExample

And if you want to layout them vertically use QVBoxLayout

I would strongly suggest reading the documentation. Layout Management in Qt

Andere Tipps

Use QMainWindow::setCentralWidget(QWidget *) to add your own control.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top