- 博客主頁:Duck Bro 博客主頁
- 系列專欄:Qt 專欄
- 關注博主,后期持續更新系列文章
- 如果有錯誤感謝請大家批評指出,及時修改
- 感謝大家點贊👍收藏?評論?
Qt常用控件 | 布局管理器 | 垂直布局Vertical Layout
文章編號:Qt 學習筆記 / 41
文章目錄
- Qt常用控件 | 布局管理器 | 垂直布局Vertical Layout
- 一、QVBoxLayout介紹
- 1. 簡介
- 2. 核心屬性
- 二、QVBoxLayout使用
- 1. 使用代碼創建QVBoxLayout
- 2. 圖形化創建兩個QVBoxLayout
一、QVBoxLayout介紹
1. 簡介
QVBoxLayout是Qt框架中的一個布局管理器類,用于在垂直方向上排列子控件。它是QBoxLayout的子類,繼承了QBoxLayout的功能和特性。
通過使用QVBoxLayout,可以對子控件在垂直方向上進行自動布局,而無需手動調整它們的位置和大小。可以將多個子控件添加到QVBoxLayout中,并通過一些方法和屬性來指定它們之間的間距和對齊方式。
2. 核心屬性
屬性 | 說明 |
---|---|
layoutLeftMargin | 左側邊距 |
layoutRightMargin | 右側邊距 |
layoutTopMargin | 上方邊距 |
layoutBottomMargin | 下方邊距 |
layoutSpacing | 相鄰元素之間的間距 |
Layout 只是用于界?布局, 并沒有提供信號
二、QVBoxLayout使用
1. 使用代碼創建QVBoxLayout
- 創建布局管理器和三個按鈕. 并且把按鈕添加到布局管理器中,代碼如下
#include "widget.h"
#include "ui_widget.h"
#include <QPushButton>
#include <QVBoxLayout>
Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//創建三個按鈕QPushButton * button1 = new QPushButton("按鈕1");QPushButton * button2 = new QPushButton("按鈕2");QPushButton * button3 = new QPushButton("按鈕3");//創建布局管理器QVBoxLayout * layout = new QVBoxLayout();//將按鈕添加進布局管理器layout->addWidget(button1);layout->addWidget(button2);layout->addWidget(button3);//把布局管理器設置到widget中this->setLayout(layout);
}Widget::~Widget()
{delete ui;
}
- 運行上述代碼,查看結果
2. 圖形化創建兩個QVBoxLayout
-
在界面中創建兩個垂直布局,將按鈕拖入垂直布局中,如下圖所示
-
也可以使用選中要垂直布局的按鈕后,點擊界面上方的垂直布局
-
運行代碼,按鈕已經自動排好位置了,但是當前按鈕不能隨窗口變化而變化了