layout继承图
常用的布局类:
(1)使用水平布局类QHBoxLayout;
(2)使用垂直布局类QVBoxLayout;
(3)使用网格布局类QGridLayout;
(4)使用表格布局类QFormLayout;
代码演示
下面用代码演示用上面的布局类实现下面的窗口效果
下面的代码部分有头文件,源文件,和所有使用函数的效果截图组成
头文件
#include <QWidget>
#include <QLabel>
#include <QLineEdit>
#include <QRadioButton>
#include <QPushButton>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
// 初始化标签
void initLabel();
// 初始化输入框
void initLineEdit();
// 初始化布局
void initLayout();
// 初始化按钮
void initBtn();
protected:
// 标签
QLabel *nameLabel;
QLabel *ageLabel;
QLabel *emailLabel;
QLabel *numLabel;
QLabel *sexLabel;
// 输入框
QLineEdit *ageLineEdit;
QLineEdit *nameLineEdit;
QLineEdit *emailLineEdit;
QLineEdit *numLineEdit;
// 单选按钮
QRadioButton *mBtn;
QRadioButton *wBtn;
QPushButton *okBtn;
};
源文件
创建基本控件就不做详细解释了,主要关注initLayout()函数里的layout的表现