「サンプル ウィジェットをレイアウトする」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
**ボックスレイアウトの方向について
***QBoxLayout::QBoxLayout() コンストラクタ生成時に指定する
#highlight(linenumber,c){{
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent)
{
//ボタン2つとテキストボックス1つを作成する
QWidget *widget = new QWidget;
QPushButton *button1 = new QPushButton("button 1");
QPushButton *button2 = new QPushButton("button 2");
QLineEdit *textbox = new QLineEdit();
//垂直方向のボックスレイアウトを作成する
QBoxLayout *horizonal = new QBoxLayout(QBoxLayout::TopToBottom);
horizonal->addWidget(button1);
horizonal->addWidget(button2);
horizonal->addWidget(textbox);
//レイアウトしたウィジェットをメインウィンドウにセットする
widget->setLayout(horizonal);
setCentralWidget(widget);
}
}}
***サブクラスのコンストラクタで作成する
QHBoxLayout::QHBoxLayout() で作成した場合は、QBoxLayout::LeftToRight
QVBoxLayout::QVBoxLayout() で作成した場合は、QBoxLayout::TopToBottom
がそれぞれ設定されます。
***後から変更する
setDirection(Direction direction) を使用して後から変更することもできます。
例
setDirection(QBoxLayout::TopToBottom); //方向を上から下に設定する