pyqt5,QTabWidget创建4个页面,这4个页面不是排成1行,而是排成2行,如何编写代码
时间: 2023-09-21 14:13:17 浏览: 112
?你可以使用QGridLayout将四个页面分成两行两列。你可以创建一个QGroupBox,并使用QGridLayout将其分成两行两列。然后,在每个单元格中添加一个QTabWidget。以下是一个简单的示例代码:
```
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QHBoxLayout, QVBoxLayout, QGridLayout, QTabWidget, QGroupBox
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
grid = QGridLayout()
self.setLayout(grid)
groupbox = QGroupBox('Tab Layout')
groupboxLayout = QGridLayout()
tab1 = QTabWidget()
tab1.setObjectName('Tab 1')
tab2 = QTabWidget()
tab2.setObjectName('Tab 2')
tab3 = QTabWidget()
tab3.setObjectName('Tab 3')
tab4 = QTabWidget()
tab4.setObjectName('Tab 4')
# add tabs to grid
groupboxLayout.addWidget(tab1, 0, 0)
groupboxLayout.addWidget(tab2, 0, 1)
groupboxLayout.addWidget(tab3, 1, 0)
groupboxLayout.addWidget(tab4, 1, 1)
groupbox.setLayout(groupboxLayout)
# add grid to layout
grid.addWidget(groupbox)
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('Tabs')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```
上面的程序中,我们使用了QGridLayout和QGroupBox来创建四个Tab Widget。使用groupboxLayout.addWidget方法将四个Tab Widget添加到groupbox中。然后将QGroupBox添加到grid中。
阅读全文