本文主要是介绍Qt中的QGridLayout,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 1 Qt中的QGridLayout
- 1.1 QGridLayout布局管理器
- 1.2 QGridLayout布局管理器的嵌套
1 Qt中的QGridLayout
1.1 QGridLayout布局管理器
QGridLayout布局管理器:
- 以网格(二维)的方式管理界面组件。
QGridLayout中的比例系数设置:
QGridLayout示例代码:
void Widget::testGridLayout1()
{QGridLayout* layout = new QGridLayout();TestBtn1.setText("Test Button 1");TestBtn1.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn1.setMinimumSize(160, 30);TestBtn2.setText("Test Button 2");TestBtn2.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn2.setMinimumSize(160, 30);TestBtn3.setText("Test Button 3");TestBtn3.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn3.setMinimumSize(160, 30);TestBtn4.setText("Test Button 4");TestBtn4.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn4.setMinimumSize(160, 30);layout->setSpacing(10);layout->addWidget(&TestBtn1, 0, 0);layout->addWidget(&TestBtn2, 0, 1);layout->addWidget(&TestBtn3, 1, 0);layout->addWidget(&TestBtn4, 1, 1);layout->setRowStretch(0, 1);layout->setRowStretch(1, 3);layout->setColumnStretch(0, 1);layout->setColumnStretch(1, 3);setLayout(layout);
}
QGridLayout中的组件可以根据需要跨越多个网格,示例代码如下:
void Widget::testGridLayout2()
{QGridLayout* layout = new QGridLayout();TestBtn1.setText("Test Button 1");TestBtn1.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn1.setMinimumSize(160, 30);TestBtn2.setText("Test Button 2");TestBtn2.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn2.setMinimumSize(160, 30);TestBtn3.setText("Test Button 3");TestBtn3.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn3.setMinimumSize(160, 30);TestBtn4.setText("Test Button 4");TestBtn4.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn4.setMinimumSize(160, 30);layout->setSpacing(10);layout->addWidget(&TestBtn1, 0, 0, 2, 1);layout->addWidget(&TestBtn2, 0, 1, 2, 1);layout->addWidget(&TestBtn3, 2, 0, 1, 2);layout->addWidget(&TestBtn4, 3, 0, 1, 2);setLayout(layout);
}
1.2 QGridLayout布局管理器的嵌套
布局管理器的嵌套:
- QGridLayout支持嵌套其它布局管理器成为其管理对象。
参考资料:
- QT实验分析教程
这篇关于Qt中的QGridLayout的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!