(1).QGridLayout 栅格格布局
QGridLayout *calcu = new QGridLayout;(先定义申请空间)
void QGridLayout::addWidget(QWidget * widget, int row, int column, Qt::Alignment alignment = 0)
void QGridLayout::addWidget(QWidget * widget, int fromRow, int fromColumn, int rowSpan, int columnSpan, Qt:: Alignment alignment = 0)
用addWidget添加控件到布局中,如:
calcu->addWidget(digitButton,3,0); 添加一个digitButton 按钮控件到布局中
(2).QVBoxLayout 垂直布局
QVBoxLayout *memoryLayout = new QVBoxLayout;(先定义申请空间) 下面的例子可以充分说明
QWidget *window = new QWidget;
QPushButton *button1 = new QPushButton("One");
QPushButton *button2 = new QPushButton("Two");
QPushButton *button3 = new QPushButton("Three");
QPushButton *button4 = new QPushButton("Four");
QPushButton *button5 = new QPushButton("Five");
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget(button1);
layout->addWidget(button2);
layout->addWidget(button3);
layout->addWidget(button4);
layout->addWidget(button5);
window->setLayout(layout);
window->show();
(3).QHBoxLayout 水平布局
QHBoxLayout *cLayout = new QHBoxLayout; 同上 来个例子
QWidget *window = new QWidget;
QPushButton *button1 = new QPushButton("One");
QPushButton *button2 = new QPushButton("Two");
QPushButton *button3 = new QPushButton("Three");
QPushButton *button4 = new QPushButton("Four");
QPushButton *button5 = new QPushButton("Five");
QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget(button1);
layout->addWidget(button2);
layout->addWidget(button3);
layout->addWidget(button4);
layout->addWidget(button5);
window->setLayout(layout);
window->show();
也有
QHBoxLayout *cLayout = new QHBoxLayout;
cLayout->addLayout(memoryLayout);
cLayout->addLayout(calcu);
用addLayout()函数将布局再布局下
(4).setLayout() 函数 设计完布局时候要调用父类的setLayout()函数
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget(formWidget);
setLayout(layout);
(5).QFormLayout
目前还没有遇到,遇到后再来写完