栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python之PyQt5的高级控件QTableView学习

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python之PyQt5的高级控件QTableView学习

Python之PyQt5的高级控件QTableView学习
1、#设置表格100%填满窗口

self.tableView.horizontalHeader().setStretchLastSection(True)
#self.tableView.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)

2、#设置指定列宽度

self.tableView.setColumnWidth(0,100)
self.tableView.setColumnWidth(1,300)
self.tableView.setColumnWidth(2,100)
self.tableView.setColumnWidth(3,100)
self.tableView.setColumnWidth(4,100)
self.tableView.setColumnWidth(5,100)
self.tableView.setColumnWidth(6,100)
self.tableView.setColumnWidth(7,80)

3、QTableView,QStandardItemModel隐藏默认的行号

hearder=self.tableView.verticalHeader()
hearder.hide()

4、QTableView,设置不可编辑

self.tableView.setEditTriggers(QAbstractItemView.NoEditTriggers)

完整代码:

# -*- coding: utf-8 -*- 
'''
    【简介】
	PyQT5中QTableView表格视图控件的例子
   
  
'''

from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys

class Table(QWidget):

	def __init__(self, arg=None):
		super(Table, self).__init__(arg)
		self.setWindowTitle("QTableView表格视图控件的例子") 		
		self.resize(1000,400);
		self.model=QStandardItemModel(4,4);
		self.model.setHorizontalHeaderLabels(['测试步骤','测试项目','规格下限','规格上限','单位','实测值','测试结果'])
	
		
		for row in range(100):
			for column in range(7):
				item = QStandardItem("row %s, column %s"%(row,column))
				self.model.setItem(row, column, item)
		
		self.tableView=QTableView()

		self.tableView.setModel(self.model)
		#下面代码让表格100填满窗口
		self.tableView.horizontalHeader().setStretchLastSection(True)
		#self.tableView.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
		#设置列宽度
		self.tableView.setColumnWidth(0,100)
		self.tableView.setColumnWidth(1,300)
		self.tableView.setColumnWidth(2,100)
		self.tableView.setColumnWidth(3,100)
		self.tableView.setColumnWidth(4,100)
		self.tableView.setColumnWidth(5,100)
		self.tableView.setColumnWidth(6,100)
		self.tableView.setColumnWidth(7,80)
		#QTableView,QStandardItemModel隐藏默认的行号
		hearder=self.tableView.verticalHeader()
		hearder.hide()
		
		#QTableView,不可编辑
		self.tableView.setEditTriggers(QAbstractItemView.NoEditTriggers)
		




		dlgLayout=QVBoxLayout();
		dlgLayout.addWidget(self.tableView)
		self.setLayout(dlgLayout)

if __name__ == '__main__':
	app = QApplication(sys.argv)	
	table = Table()
	table.show()
	sys.exit(app.exec_())

效果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/972078.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号