PyQt5:网格布局2(14)

学习《PyQt4入门指南 PDF中文版.pdf 》笔记

PyQt5:网格布局2(14)_第1张图片

部件在网格布局中可以跨越多行或者多列。我们将下面的示例中演示该情况。

#!/usr/bin/python
# gridlayout2.py
from PyQt5.QtWidgets import QApplication, QLineEdit, QLabel, QGridLayout
from PyQt5 import QtWidgets

class GridLayout(QtWidgets.QWidget):
    def __init__(self, parent= None):
        QtWidgets.QWidget.__init__(self)
  
        self.setWindowTitle('grid layout')
        
        title = QLabel('Title')
        author = QLabel('Author')
        review = QLabel('Review')
        
        titleEdit = QLineEdit()
        authorEdit = QLineEdit()
        reviewEdit = QLineEdit()
        
        grid = QGridLayout()
        grid.setSpacing(10)
        
        grid.addWidget(title, 1, 0)
        grid.addWidget(titleEdit, 1, 1)
        grid.addWidget(author, 2, 0)
        grid.addWidget(authorEdit, 2, 1)
        grid.addWidget(review, 3, 0)
        grid.addWidget(reviewEdit, 3, 1, 5, 1)
        
        self.setLayout(grid)
        self.resize(350,  300)


if __name__ == "__main__":
    import sys
    app = QApplication(sys.argv)
    qb = GridLayout()
    qb.show()
    sys.exit(app.exec_())

        grid = QGridLayout()

        grid.setSpacing(10)

         通过以上两句,我们创建了一个网格布局,并将该布局中的部件间隔(同行的横向间隔)设为10个字距。

         grid.addWidget(reviewEdit,3, 1, 5, 1)

         我们可以为加入网格布局的部件设置行列跨度,在上面的语句中,我们将reviewEdit部件的行跨度设置为5,列跨度设置为1。


你可能感兴趣的:(PyQt5)