python rowcount_PyQt(Python+Qt)学习随笔:QTableWidget的currentItem、rowCount、columnCount等部件状态属性访问方法...
老猿将QTableWidget表格部件中反映部件当前情况的一些方法归类为部件状态访问方法,包括部件的行数、列数、当前项、当前行、当前列等属性访问方法。
1、行数rowCount
QTableWidget的rowCount属性保存表格部件中的行数,在QTableWidget创建时如果没有指定行数,则缺省行数为0,QTableWidget创建后可以通过 setRowCount方法调整行数。
要获取当前表格部件中的行数,可以通过rowCount()方法获取,要设置表格部件的行数,可以通过setRowCount(int rows)调整表格的行数,如果参数rows小于现在表格中的实际行数,则表格中超出参数的行数数据会丢弃,就算是后面将行数或列数恢复也不能恢复相关数据。
2、列数columnCount
columnCount属性保存表格部件中的列数,相关属性和操作方法和rowCount类似。在QTableWidget创建时如果没有指定列数,则缺省列数为0,QTableWidget创建后可以通过 setColumnCount方法调整。
columnCount可以通过columnCount()方法获取,通过setColumnCount(int columns)设置。
3、当前项访问方法
当前项是指当前鼠标和键盘焦点所在项,在项可以进行选择操作时,当前项可以是选中状态,也可以是未选中状态,选中项也不一定是当前项。与当前项相关的方法包括:
QTableWidgetItem currentItem() :返回当前项对应项对象,如果没有当前项则返回None
setCurrentItem(QTableWidgetItem item):设置当前项
setCurrentItem(QTableWidgetItem item, QItemSelectionModel.SelectionFlags command):设置当前项
setCurrentCell(int row, int column):设置当前项
setCurrentCell(int row, int column, QItemSelectionModel.SelectionFlags command):设置当前项
注意:
后面4个方法都是设置当前项,方法名为setCurrentItem的参数是QTableWidgetItem实例,方法名为setCurrentCell的参数是行和列,即这两类方法依据的项定位方法不同
参数中带command参数的,要求除了将当前项改为参数确认的项之外,还要求有额外的响应,具体响应由command参数确认。关于QItemSelectionModel.SelectionFlags 请参考《PyQt(Python+Qt)学习随笔:Mode/View中的枚举类QItemSelectionModel.SelectionFlag取值及含义》;
设置当前项的方法无返回值,如果设置失败(如指定参数项在部件中不存在)是无法直接判断的,如果设置成功,会触发QTableWidget部件发射信号currentItemChanged和currentCellChanged信号以及currentChanged信号,这三个信号都表示当前项改变了,只是信号签名不一样(关于信号签名请见《PyQt(Python+Qt)学习随笔:信号签名(signature of the signal)是什么?》)。其中前2个信号是表格部件自身的信号,currentChanged信号是表格部件父类QTableView的信号。
如果当前项没有,则currentItem()方法返回None
4、当前行和列访问方法
当前项所在的行和列,既可以通过当前项的QTableWidgetItem实例对象的行号(row()方法)和列号(column()方法)获取,也可以直接通过QTableWidget获取。调用语法如下:
int currentColumn()
int currentRow()
如果部件没有当前项,则上述两个方法返回-1。
老猿Python,跟老猿学Python!
python rowcount_PyQt(Python+Qt)学习随笔:QTableWidget的currentItem、rowCount、columnCount等部件状态属性访问方法...相关推荐
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的accessibleDescription和accessibleName辅助阅读属性
accessibleDescription和accessibleName属性都是用于残疾人辅助阅读的,这两个属性都有国际化属性(关于国际化请参考<PyQt(Python+Qt)学习随笔:Qt D ...
- PyQt(Python+Qt)学习随笔:QListView的itemAlignment属性
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QListView的itemAlignment属性用于控制每个数据项的对齐方式,其类型为枚举类Qt. ...
- 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解
第7.26节 Python中的@property装饰器定义属性访问方法getter.setter.deleter 详解 一. 引言 Python中的装饰器在前面接触过,老猿还没有深入展开介绍装饰 ...
- Python使用property函数和使用@property装饰器定义属性访问方法的异同点分析
Python使用property函数和使用@property装饰器都能定义属性的get.set及delete的访问方法,他们的相同点主要如下三点: 1.定义这些方法后,代码中对相关属性的访问实际上都会 ...
- Python使用property函数定义属性访问方法如果不定义fget会怎么样?
我们知道Python使用property函数定义属性访问方法时的语法如下: 实例属性=property(fget=None, fset=None, fdel=None, doc=None) 而是要@p ...
- JavaScript学习(六十六)—字符串对象常用的属性和方法总结以及数组元素的排序问题
JavaScript学习(六十六)-字符串对象常用的属性和方法总结以及数组元素的排序问题 学习内容 一.数组去重问题 二.二维数组的定义 三.二维数组的元素操作 四.二维数组的遍历 五.关联数组 六. ...
- Python(Python+Qt)学习随笔:使用xlwings新建Execl文件和sheet的方法
在<Python学习随笔:使用xlwings读取和操作Execl文件>介绍了使用xlwings读取和操作Execl文件的方法,但老猿这两天写个例子使用时,发现使用该文的方法无法新建EXCE ...
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的调色板palette属性和字体font属性设置
一.调色板 在Qt Designer的部件属性中,有个部件调色板(palette)的属性,进入后,如下图所示: 1.调色板palette Qt中提供的调色板palette用于管理控件的外观显示,对应P ...
- PyQt学习随笔:QWidget的QFont的kerning、Antialiasing属性用途
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 引言 在Designer中,QWidget的font属性有两个比较陌生 ...
最新文章
- Zookeeper源码分析:集群模式启动概述
- 学习Python(一)
- django1.4日志模块配置及使用
- JavaScript最全的10种跨域共享的方法
- 错误 Failed to load module “canberra-gtk-module“ 解决方案
- 我的QT4.5编译流水帐(转帖)
- 芯片项目谁支持谁负责 重大损失将予以通报
- Zabbix2.2.6邮件报警设置方法
- echarts柱状图x轴文字纵向显示
- 禁止snmpd写入日志到syslog
- POJ 1014	 Dividing【多重背包+二进制优化】
- c++ Dxgi+FFmpeg 完成对截图屏幕,以及将屏幕数据保存为MP4格式,以完成录屏功能
- scratch经典游戏主题源码分享,包含了20多款经典游戏
- 《嵌入式系统原理与应用》 |(一)嵌入式系统概述 知识梳理
- 傅立叶级数与傅里叶变换
- Mac查看本地ip地址
- css的盒子模型与定位机制解读随记
- 日语中的“上手”“下手”是什么意思?
- 冯扬文:新冠疫情下国际航运市场趋势分析
- 小程序 6位数密码输入