currentRowChanged 的注意事项

简介:

Qt中的表单控件QListWidget类提供了许多信号函数,可以和用户交互,其中有个currentRowChanged ( int currentRow ) 是检测当前选中行是否发生了改变,如果改变了,该信号函数被触发。

void QListWidget::currentRowChanged ( int currentRow ) [signal]

This signal is emitted whenever the current item changes.
currentRow is the row of the current item. If there is no current item, the currentRow is -1.

我们要注意的是最后一句话,当没有当前项时,currentRow 赋值为-1,由于有这点存在,所以再写该信号函数的内容开始,一定要先判断currentRow的值是否大于等于0,若忽略了这一步,在下面直接用currentRow当做参数取访问数组时会出错,而通常这错误得费老半天劲才能找的出来,正确写法如下: 

void YourClass::on_lwidget_currentRowChanged(int currentRow) {
    // Note: lwdiget is the object name of listwidget
    if (currentRow >= 0) {
        // Implement here!
    }
}

本文转自博客园Grandyang的博客,原文链接:currentRowChanged 的注意事项,如需转载请自行联系原博主。

相关文章
|
编解码 Ubuntu
记录一次Gstreamer运行报错排查
记录一次Gstreamer运行报错排查
|
编解码 容器
QML/Qt Quick anchors.fill 的使用(二)
QML/Qt Quick anchors.fill 的使用
393 0
|
SQL 存储 分布式计算
从0到1介绍一下开源大数据比对平台dataCompare
从0到1介绍一下开源大数据比对平台dataCompare
924 0
|
存储 Java 定位技术
gis利器之Gdal(二)shp数据读取
本文首先简单介绍了空间数据shp数据的基本知识,其常见的文件组成形式。使用qgis软件对数据进行常规预览,最后重点介绍了使用gdal对矢量信息进行读取,​包括空间信息和属性信息
1556 0
gis利器之Gdal(二)shp数据读取
【qt】 QGridLayout布局管理器怎么用?
【qt】 QGridLayout布局管理器怎么用?
532 0
|
6月前
|
数据采集 Prometheus Cloud Native
架构革新:揭示卓越性能与高可扩展的共赢秘诀
为了构建现代化的可观测数据采集器LoongCollector,iLogtail启动架构通用化升级,旨在提供高可靠、高可扩展和高性能的实时数据采集和计算服务。然而,通用化的过程总会伴随性能劣化,本文重点介绍LoongCollector的性能优化之路,并对通用化和高性能之间的平衡给出见解。
架构革新:揭示卓越性能与高可扩展的共赢秘诀
|
10月前
|
存储 缓存 监控
【赵渝强老师】HBase的体系架构
本文介绍了HBase的体系架构,包括HMaster、RegionServer和ZooKeeper的主要功能。HMaster负责Region的分配和管理,RegionServer处理数据的读写操作,ZooKeeper维护集群状态并协调分布式系统的运行。文章还详细解释了Region、WAL预写日志、Block Cache读缓存和MemStore写缓存的作用。
429 0
|
11月前
|
人工智能 弹性计算 运维
触手可及:阿里云函数计算助力AI大模型的评测
阿里云推出的面向AI服务器的功能计算(Functional Computing, FC),专为AI应用提供弹性计算资源。该服务支持无服务器部署、自动资源管理和多语言支持,极大简化了AI应用的开发和维护。本文全面评测了FC for AI Server的功能特性、使用体验和成本效益,展示了其在高效部署、成本控制和安全性方面的优势,并通过具体应用案例和改进建议,展望了其未来发展方向。
443 4
|
12月前
|
Python
python第三方库-字符串编码工具 chardet 的使用(python3经典编程案例)
这篇文章介绍了如何使用Python的第三方库chardet来检测字符串的编码类型,包括ASCII、GBK、UTF-8和日文编码的检测示例。
578 6
|
安全 Java 开发者
Java一分钟之-Spring Cloud Netflix Eureka:服务注册与发现
【6月更文挑战第8天】Spring Cloud Eureka是微服务架构的关键,提供服务注册与发现功能。本文讲解Eureka工作原理、配置、常见问题及解决方案。Eureka包含Server(管理服务状态)和Client(注册服务实例并发现服务)。快速入门包括启动Eureka Server和创建Eureka Client。常见问题涉及服务注册不上、服务下线和客户端注册信息不准确,可通过检查网络、理解自我保护机制和配置元数据解决。此外,文中还提及健康检查、安全配置和集群部署等高级实践,以增强系统健壮性和扩展性。
420 8