【python】pyside2的QTableWidget的基本用法(持续更新)

作者:admin   时间:2023-07-11   访问量:1

QTableWidget的基本用法(持续更新)

      前言:

此篇文章中介绍PySide2中QTableWidget类的基本用法,包括设置表头标签、隐藏表头、设置禁止编辑单元格内容、设置表格单元格内容居中显示等,会持续进行更新,有需要的读者可以点赞收藏,也欢迎在评论区进行讨论。

      正文

1、创建表格

        from PySide2.QtWidgets import *
        self.ui.tbData = QTableWidget(0, 12)  # 初始化表格,参数分别是表格的行数、列数


2、设置水平方向的表头标签

        self.ui.tbData.setHorizontalHeaderLabels(['序号', '记录时间',"温度", "上限", "下限", "单位", "湿度", "上限", "下限", "单位","用户信息", "编号"])  # 设置水平方向的表头标签


3、设置水平方向表格为自适应的伸缩模式

        self.ui.tbData.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)


4、设置表头的显示模式

        self.ui.tbData.verticalHeader().setVisible(False)  # 隐藏垂直方向表头
        self.ui.tbData.horizontalHeader().setVisible(True)  # 显示水平方向表头


5、设置表格中分割线的显示模式

        self.ui.tbData.setShowGrid(True)  # 表格中显示分割线


6、设置禁止编辑单元格

        self.ui.tbData.setEditTriggers(QAbstractItemView.NoEditTriggers)  # 禁止编辑单元格


7、设置表格单元格选中模式

        self.ui.tbData.setSelectionBehavior(QAbstractItemView.SelectItems)  # 设置表格单元格选中
        # self.ui.tbData.setSelectionBehavior(QAbstractItemView.SelectRows)  # 设置表格行选中
        # self.ui.tbData.setSelectionBehavior(QAbstractItemView.SelectColumns)  # 设置表格列选中


8、设置隔行变色方法

        self.ui.tbData.setAlternatingRowColors(True)  # 设置隔行变色方法


9、表格插入一行

        self.ui.tbData.insertRow(2) # 插入一行到第3行的位置


10、表格删除一行

        self.ui.tbData.removeRow(2) # 删除第3行


11、设置单元格内容

        self.ui.tbData.item(1,3).setText('time') # 设置第2行,第4列单元格的内容

        如果单元格已经被设置过内容:
        self.ui.tbData(1,3).setText('time') # 改写第2行,第4列单元格的内容


12、设置单元格内容居中

        for c in range(self.ui.tbData.columnCount()):
            for r in range(self.ui.tbData.rowCount()):
                self.ui.tbData.item(r, c).setTextAlignment(Qt.AlignCenter)  # 设置单元格居中


13、设置单元格内容颜色

        self.ui.tbData.item(1, 3).setTextColor("blue")  # 设置第2行,第4列单元格的字体为蓝色


14、获取表格的行列数

        rowCount = self.ui.tbData.rowCount() # 获取表格的行数
        columnCount = self.ui.tbData.columnCount() # 获取表格的列数


15、删除表格内容

        self.ui.tbData.clearContents() # 删除所有单元格内容,表头会留下
        self.ui.tbData.setRowCount(0) # 删除所有单元格内容,表头也删除


16、表格滚动条自动滚动至底部

        self.ui.tbData.verticalScrollBar().setSliderPosition(self.ui.tbData.rowCount()) # 滚动条自动滚动至底部


【地址】:http://www.inseo.cn/seo/192.html转载请注明出处


相关文章

Copyright © 2018-2030 大树SEO All Rights Reserved.