目录
以下为作者原创,创作不易,转载请标明出处!
一、QLayout界面相关
1、布局介绍
关于QLayout,之前有介绍过界面拖动版布局效果,这次使用的是代码布局器效果。QLayout布局主要分为以下几类:QBoxLayout(QHBoxLayout、QVBoxLayout)、QGridLayout、QStackedLayout,QFormLayout一般使用较多的是前两种。
二、代码展示
1、QBoxLayout的相关使用
上代码展示:
QPushButton *btn1 = new QPushButton("1");
QPushButton *btn2 = new QPushButton("2");
QPushButton *btn3 = new QPushButton("3");
QPushButton *btn4 = new QPushButton("4");
QPushButton *btn5 = new QPushButton("5");
QPushButton *btn6 = new QPushButton("6");
QPushButton *btn7 = new QPushButton("7");
//盒子布局,方向是从右往左进行效果
QBoxLayout *m_BoxLayout = new QBoxLayout(QBoxLayout::RightToLeft);
QVBoxLayout *m_VboxLayout = new QVBoxLayout(this);
m_VboxLayout->addWidget(btn5);
m_VboxLayout->addWidget(btn6);
m_VboxLayout->addWidget(btn7);
m_BoxLayout->addWidget(btn1);
m_BoxLayout->addWidget(btn2);
m_BoxLayout->addWidget(btn3);
m_BoxLayout->addWidget(btn4);
m_BoxLayout->addLayout(m_VboxLayout);
//布局完之后,也是可以修改的,修改为从左往右
//m_BoxLayout->setDirection(QBoxLayout::LeftToRight);
QWidget *m_widget = new QWidget();
m_widget->resize(200,150);
m_widget->setLayout(m_BoxLayout);
this->setCentralWidget(m_widget);
注意布局完之后也可以修改,修改为从左往右
2、QGridLayout的使用
上代码展示:
//QGridLayout
QPushButton *btn1 = new QPushButton("1");
QPushButton *btn2 = new QPushButton("2");
QPushButton *btn3 = new QPushButton("3");
QPushButton *btn4 = new QPushButton("4");
//等比例设置
QGridLayout *glayout = new QGridLayout();
glayout->addWidget(btn1,0,0,1,1);
glayout->addWidget(btn2,0,1,1,1);
glayout->addWidget(btn3,1,0,1,1);
glayout->addWidget(btn4,1,1,1,1);
//设置占比
// glayout->setColumnStretch(0,3);
// glayout->setColumnStretch(1,2);
QWidget *m_widget = new QWidget();
m_widget->setLayout(glayout);
this->setCentralWidget(m_widget);
以上是1:1:1:1展示
将设置占比放开之后效果如下:
推荐博客:精灵球Plus介绍_清风徐来Groot的博客-CSDN博客
百度云盘:链接:https://pan.baidu.com/s/11b634VvKMIsGdahyBLpZ3Q 提取码:6666
好了,以上关于QT入门控件介绍到此为止了,后期如果有需要看看要不要再来出个高级篇的