QTableWidget
QTableWidget是Qt程序中常用的显示数据表格的控件
与C#中的DataGrid相似,QTableWidget是QTableView的子类。
QTableWidget类中的常用凡是方法如下
方法(常用设置) |
描述 |
setROwCount(int row) |
设置QTableWidget表格控件的行数 |
setColumnCount(int col) |
设置QTableWidget表格控件的列数 |
setHorizontalHeaderLabels() |
设置QTableWidget表格控件的水平标签 |
setVerticalHeaderLabels() |
设置QTableWidget表格控件的垂直标签 |
setItem(int ,int ,QTableWidgetItem) |
在QTableWidget表格控件的每个选项的单元控件内添加控件 |
horizontalHeader() |
获得QTableWidget表格控件的表格头,以便执行隐藏 |
rowCount() |
获得QTableWidget表格控件的行数 |
columnCount() |
获得QTableWidget表格控件的列数 |
setEditTriggers(EditTriggers triggers) |
设置表格是否可以编辑,设置表格的枚举值 |
setSelectionBehavior |
设置表格的选择行为 |
setTextAlignment() |
设置单元格内文本的对齐方式 |
setSpan(int row,int column,int rowSpanCount,int columnSpanCount) |
合并单元格,要改变单元格的第row行,column列,要合并rowSpancount行数和columnSpanCount列数 |
|
row:要改变的行数 |
|
column:要改变的列数 |
|
rowSpanCount:需要合并的行数 |
|
columnSpanCount:需要合并的列数 |
setShowGrid() |
在默认情况下表格的显示是有网格的,可以设置True或False用于是否显示,默认True |
setColumnWidth(int column,int width) |
设置单元格行的宽度 |
选项(编辑规则的枚举值类型) |
值 |
描述 |
QAbstractItemView.NoEditTriggers0No |
0 |
不能对表格内容进行修改 |
QAbstractItemView.CurrentChanged1Editing |
1 |
任何时候都能对单元格进行修改 |
QAbstractItemView.DoubleClicked2Editing |
2 |
双击单元格 |
QAbstractItemView.SelectedClicked4Editing |
4 |
单击已经选中的内容 |
QAbstractItemView.EditKeyPressed8Editing |
8 |
当修改键按下时修改单元格 |
QAbstractItemView.AnyKeyPressed16Editing |
16 |
按任意键修改单元格 |
QAbstractItemView.AllEditTriggers31Editing |
31 |
包括以上所有条件 |
选择(单元格枚举值) |
值 |
描述 |
QAbstractItemView.SelectItems0Selecting |
0 |
选中单个单元格 |
QAbstractItemView.SelectRows1Selecting |
1 |
选中一行 |
QAbstractItemView.SelectColumns2Selecting |
2 |
选中一列 |
选项(单元格水平对齐的方式) |
描述 |
Qt.AlignLeft |
将单元格内的内容沿单元格的左边缘对齐 |
Qt.AlignRight |
将单元格内的内容沿单元格的右边缘对齐 |
Qt.AlignHCenter |
在可用空间中,居中显示在水平方向上 |
Qt.AlignJustify |
将文本在可用空间内对齐,默认从左到 |
选项(单元格垂直对齐的方式) |
描述 |
Qt.AlignTop |
与顶部对齐 |
Qt.AlignBottom |
与底部对齐 |
Qt.AlignVCenter |
在可用空间中,居中显示在垂直方向上 |
Qt.AlignBaseline |
与基线对齐 |
QTableWidget的实例化
(1)pyqt5初级示例(实现如下表的类型)

##########################################################################
#在pyqt5的Ui界面设计一款简单的数据表格
##########################################################################
#主程序代码
import sys
from PyQt5.QtWidgets import QColor,QBrush
from PyQt5.QtWidgets import *
from PyQt5.QtGui import QColor,QBrush
from untitled import Ui_MainWindow
class MyMainWindow(QMainWindow,Ui_MainWindow):
def __init__(self,parent = None):
super(MyMainWindow, self).__init__(parent)
self.setupUi(self)
#*******************************************
#主要进行功能界面的实现
#*******************************************
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainWindow()
myWin.show()
sys.exit(app.exec_())