7

Widgetの等しい部分に2つの子オブジェクトを追加するにはどうすればよいですかQMainWindow

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

{   TreeArea *ta= new TreeArea(this);
    TreeArea *ta1= new TreeArea(this);
.
.
.
  TreeArea::TreeArea(QWidget *parent) :
 QWidget(parent)
{
.
.
.
4

2 に答える 2

15

e-zinc が提案したように、レイアウトを使用する必要があります。メインウィンドウに 2 つのウィジェットを挿入するとします。

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);

これにより、ウィジェットが水平にレイアウトされ、次の結果が得られます。 QHBoxLayout例

そして、それらを垂直にレイアウトしたい場合は、使用しますQVBoxLayout

ドキュメントを読むことを強くお勧めします。Qt でのレイアウト管理

于 2012-02-16T08:39:57.750 に答える
5

QMainWindow::setCentralWidget(QWidget *)独自のコントロールを追加するために使用します。

于 2012-02-16T06:10:08.287 に答える