PyQt5基礎學習-TableWidget(表格擴展) 1.QTableWidget().setHorizontalHeaderLabels([設置行]) 2.QTableWidgetItem(填充表格內容) 3.QTableWidget().setItem(填充內容) 4.tablewidget.setEditTriggers(禁止編輯)


TableWidget是TableViewer的子函數, 整體的使用方式和TableViewer一致,只是多了一些方法

"""
擴展的表格控件(QTableWidget)
QTableView
"""

import sys
from PyQt5.QtWidgets import *

class TableWidgetDemo(QMainWindow):
    def __init__(self):
        super(TableWidgetDemo, self).__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle("QTableWidget演示")
        self.resize(430, 230)
        layout = QHBoxLayout()
        tablewidget = QTableWidget()
        tablewidget.setRowCount(4)
        tablewidget.setColumnCount(3)

        layout.addWidget(tablewidget)

        tablewidget.setHorizontalHeaderLabels(['姓名', '年齡', '籍貫'])

        nameItem = QTableWidgetItem("小明")
        #填充內容
        tablewidget.setItem(0, 0, nameItem)

        ageItem = QTableWidgetItem("24")
        tablewidget.setItem(0, 1, ageItem)

        jgItem = QTableWidgetItem("24")
        tablewidget.setItem(0, 2, jgItem)

        #禁止編輯
        tablewidget.setEditTriggers(QAbstractItemView.NoEditTriggers)

        #整行選擇
        tablewidget.setSelectionBehavior(QAbstractItemView.SelectRows)

        #調整所有列和調整所有行
        tablewidget.resizeColumnsToContents()
        tablewidget.resizeRowsToContents()

        #設置水平的表頭不可見
        tablewidget.horizontalHeader().setVisible(False)
        #tablewidget.verticalHeader().setVisible(False)

        #設置豎的表頭
        tablewidget.setVerticalHeaderLabels(["a", "b"])

        #隱藏表格線
        tablewidget.setShowGrid(False)

        self.setCentralWidget(tablewidget)

        self.setLayout(layout)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    main = TableWidgetDemo()
    main.show()

    sys.exit(app.exec_())

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM