QT QHBoxLayout 水平レイアウト コントロール

        この記事では、新しいインターフェイス、コントロールの追加、レイアウト コントロール、表示コントロール、空白行の追加、間隔の設定、間隔の追加、位置の設定、外側の余白の設定、余白の設定、固定幅の追加など、QHBoxLayout コントロールのさまざまな操作を詳しく紹介します。 、上方向、下方向、左方向、右方向など、スタイルシートおよびその他の操作。

        実際の開発では、インターフェイスに十数個のコントロールが含まれる場合があり、それらの位置を手動で調整するのは時間と労力がかかります。レイアウト マネージャーは 2 つのことを行うことができます。1 つはコントロール間の間隔、配置などを含むコントロールの位置を自動的に調整することです。ユーザーがウィンドウのサイズを変更すると、それに応じてレイアウト マネージャー内のコントロールのサイズも変更され、それによって全体のウィンドウが維持されます。インターフェースが美しい。
        QT の総合記事と詳細記事のこのシリーズには、現在 23 の記事があります。この記事シリーズでは、QT コントロールの基本操作と使用法について詳しく説明します。ご注目、いいね、コレクションをありがとうございます。
 

 この記事の執筆者はオリジナルです。転載する場合は、記事の出典とこの記事のリンクを添付してください。

QT QHBoxLayout 水平レイアウト制御ディレクトリ

1 新しいインターフェース

2 コントロールのレイアウト

3つのディスプレイコントロール

4 固定幅を追加する

5 空白行を追加する

6 間隔を設定する

7 間隔を追加する

8 セットポジション

9 余白を設定する

10 余白の設定

上へ11方向

下12方向

13 方向左

14 方向右

その他15件の記事


1 新しいインターフェース

2 コントロールのレイアウト

    QPushButton* pushButton1;
    QPushButton* pushButton2;
    QPushButton* pushButton3;
    QPushButton* pushButton4;
    QHBoxLayout *pHayout;

    pHayout = new QHBoxLayout();//水平布局

    pushButton1 = new QPushButton();        pushButton1->setText("pushButton_1");
    pushButton2 = new QPushButton();        pushButton2->setText("pushButton_2");
    pushButton3 = new QPushButton();        pushButton3->setText("pushButton_3");
    pushButton4 = new QPushButton();        pushButton4->setText("pushButton_4");

3つのディスプレイコントロール

    //向布局管理器中添加指定的 widget 控件。
    pHayout->addWidget(pushButton1);
    pHayout->addWidget(pushButton2);
    pHayout->addWidget(pushButton3);
    pHayout->addWidget(pushButton4);

    ui->widget->setLayout(pHayout);

4 固定幅を追加する

    //向布局管理器中添加指定的 widget 控件。
    pHayout->addWidget(pushButton1);
    pHayout->addWidget(pushButton2);
    pHayout->addSpacing(50);
    pHayout->addWidget(pushButton3);
    pHayout->addWidget(pushButton4);
    ui->widget->setLayout(pHayout);

5 空白行を追加する

    //添加一个空白行,整个窗口中除了控件占用的区域外,其它区域可以由多个(≥0)空白行分摊,分摊比例取余于各个空白行设置的 stretch 参数的值。
    //strech 参数的默认值为 0,表示当窗口很小时,空白行可以不占据窗口空间。当窗口中包含多个 strech 值为 0 的空白行时,它们会平分窗口中的空白区域。
    pHayout->addStretch();

    //向布局管理器中添加指定的 widget 控件。
    pHayout->addWidget(pushButton1);
    pHayout->addWidget(pushButton2);
    pHayout->addWidget(pushButton3);
    pHayout->addWidget(pushButton4);

    ui->widget->setLayout(pHayout);

6 間隔を設定する

void MainWindow::on_pushButton_4_clicked()
{

    pHayout->setSpacing(150);
}

7 間隔を追加する

void MainWindow::on_pushButton_5_clicked()
{
    pHayout->addStretch(50);

    pHayout->addWidget(pushButton1);
    pHayout->addWidget(pushButton2);

    pHayout->addStretch(150);
    pHayout->addWidget(pushButton3);

    pHayout->addStretch(10);
    pHayout->addWidget(pushButton4);

    ui->widget->setLayout(pHayout);
}

8 セットポジション

void MainWindow::on_pushButton_6_clicked()
{
    //水平居左,垂直居上
    pHayout->addWidget(pushButton1,0,Qt::AlignLeft | Qt::AlignTop);
    //居右,居下
    pHayout->addWidget(pushButton2,0,Qt::AlignRight | Qt::AlignBottom);
    //居中
    pHayout->addWidget(pushButton3,0,Qt::AlignCenter );

    pHayout->addWidget(pushButton4);
}

9 余白を設定する

void MainWindow::on_pushButton_7_clicked()
{
    pHayout->addWidget(pushButton1);
    pHayout->addWidget(pushButton2);
    pHayout->addWidget(pushButton3);
    pHayout->addWidget(pushButton4);

    ui->widget->setLayout(pHayout);


    //    QMargins margins;
    //    margins.left();
    //    pLayout->setContentsMargins(margins);

    //与setMargin功能相同,但是可以将左、上、右、下的外边距设置为不同的值
    pHayout->setContentsMargins(10, 100, 10, 100 );

}

10 余白の設定

void MainWindow::on_pushButton_8_clicked()
{
    pHayout->setMargin(100);
    pHayout->addWidget(pushButton1);
    pHayout->addWidget(pushButton2);
    pHayout->addWidget(pushButton3);
    pHayout->addWidget(pushButton4);
    ui->widget->setLayout(pHayout);
}

上へ11方向

void MainWindow::on_pushButton_9_clicked()
{
    pHayout->setDirection(QBoxLayout::BottomToTop); //设置布局方向
    this->setLayout(pHayout);
}

下12方向

void MainWindow::on_pushButton_10_clicked()
{
    pHayout->setDirection(QBoxLayout::TopToBottom);
    this->setLayout(pHayout);
}

13 方向左

void MainWindow::on_pushButton_11_clicked()
{
    pHayout->setDirection(QBoxLayout::LeftToRight);
    this->setLayout(pHayout);
}

14 方向右

void MainWindow::on_pushButton_12_clicked()
{
    pHayout->setDirection(QBoxLayout::RightToLeft);
    this->setLayout(pHayout);
}

その他15件の記事

QT TextEdit Control_Gemini Breakpoint Blog-CSDN Blog_qt textedit

QT QComboBox の使用方法の詳細な説明 - Gemini Breakpoint ブログ - CSDN ブログ

QT QtableView操作の詳細説明

Qt QStandardItemModel (1. 超詳しい使い方)_ Gemini Breakpoint Blog-CSDN Blog_qstandardmodel

Qt QStandardItemModel (2. 超詳細機能)_Gemini ブレークポイント blog-CSDN blog_qstandarditemmodel クリックイベント

QT QRadioButton の詳細な使用法 - Gemini Breakpoint ブログ - CSDN ブログ - qt radiobutton

QT QLineEdit_ Gemini Breakpoint の詳細な使用法 Blog-CSDN Blog_qt qlineedit

Qt QMessageBox の使い方の詳しい説明 - Gemini Breakpoint Blog - CSDN Blog - qt message

QChart 折れ線グラフ、円グラフ、棒グラフ、曲線グラフ_ Gemini ブレークポイント ブログ-CSDN ブログ_qchart スタイル

QChart プロパティの詳細な説明_ Gemini Breakpoint Blog-CSDN Blog_setanimationoptions

QCharts の使用 QValueAxis_Gemini ブレークポイント ブログ-CSDN Blog_qvalueaxis

Qt 5 待機プロンプト ボックス (オープン ソースの動的グラフ)_ Gemini ブレークポイント ブログ-CSDN ブログ_qt 待機ダイアログ ボックス

QtDataVisualization データ 3D ビジュアライゼーション_Gemini ブレークポイント ブログ-CSDN ブログ_qtdatavisualizatio

QT QSpinBox 整数カウンター コントロールの使用方法の詳細な説明 - Gemini Breakpoint ブログ - CSDN ブログ


QT QDoubleSpinBox 浮動小数点カウンタ制御 (詳細な使用法)_Gemini Breakpoint Blog-CSDN Blog_qdoublespinbox Signal Slot


QT QSlider、Qhorizo​​ntalSlider、QVerticalSlider コントロールの使い方の詳細説明_ Gemini Breakpoint Blog-CSDN Blog_qslider 設定ステップ サイズ

QT QTabWidget コントロールの使用方法の詳細な説明 - Gemini Breakpoint ブログ - CSDN ブログ

QT QCalendarWidget Control_Gemini Breakpoint の詳細な説明ブログ -
CSDN ブログ

(メッセージ 1 件) QT QVBoxLayout 垂直レイアウト コントロール_ Gemini Breakpoint ブログ-CSDN ブログ

おすすめ

転載: blog.csdn.net/qq_37529913/article/details/130437567