Qt编程基础 | 第三章-控件 | 3.1、组合框

news2025/1/15 13:54:14

一、组合框

1.1、定义

QComboBox提供了一种向用户呈现选项列表的方式,以占用最少的屏幕空间。 组合框是一个显示当前项目的选择小部件,可以弹出可选择项目的列表。 组合框可以是可编辑的,允许用户修改列表中的每个项目。 QComboBox 除了显示可见下拉列表外,每个项(item,或称列表项)还可以关联一个 QVariant 类型的变量,用于存储一些不可见数据。如下:

在这里插入图片描述

1.2、属性

下面是组合框常用的属性,如下:

属性功能
count组合框中的项目数
currentData当前项目的数据
currentIndex当前项目的索引
editable是否可以编辑组合框。默认为 false。编辑的效果取决于插入策略
insertPolicy可编辑时插入的项目应出现在组合框中的位置的策略。默认值为 InsertAtBottom,即新项目将出现在项目列表的底部。
maxCount组合框中允许的最大项目数。
maxVisibleItems组合框屏幕上允许的最大项目数,默认为 10。

1.3、成员方法

1.3.1、添加item

两个重载addItem() 函数,第二个版本可以添加图标,两个函数都有一个可选的 QVariant 类型的参数 userData,可以利用这个变量存储用户定义数据。如下:

void addItem (const QString &text, const QVariant &userData = QVariant())
void addItem (const QIcon &icon, const QString &text, const QVariant &userData = QVariant())

1.3.2、默认显示

可以设置默认显示项,如下:

void setCurrentIndex(int index); // 设置默认显示
int currentIndex() const; // 获取当前显示的item对应的index

1.3.3、获取列表项

获取指定列表项对应的索引及数据,如下:

int currentlndex(); //返回当前项的序号,第一个项的序号为0。
QString currentText(); //返回当前项的文本
QVariant currentData(int role = Qt::UserRole); //返回当前项的关联数据
QString itemText(int index); // 返回指定索引号的项的文本
QVariant itemData(int index, int role = Qt%:UserRole); // 返回指定索引号的项的关联数据。
int count(); // 返回项的个数。

1.4、信号

QComboBox 组件上选择项发生变化时,会发射下面这些信号,如下:

void currentIndexChanged(int index)
void currentIndexChanged(const QString &text)
void currentTextChanged(const QString &text)

注意:前两个信号为重载函数,QT5新版的信号槽语法要使用函数指针语法连接到这个信号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/557745.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023款ECMAScript

2023款ECMAScript 新的数组api findLast 反向迭代数组,并返回满足提供的测试函数的第一个元素的值, 如果没有找到返回undefined const isEven (number) > number % 2 0; const numbers [1, 2, 3, 4]; console.log(numbers.findLast(isEven)); // 4 findLastI…

华为战略方法论:BLM模型之市场洞察-五看工具篇(加餐)

欢迎大家继续来到华为战略方法论系列内容。 今天主要介绍一下市场洞察篇的延伸内容 —— 五看工具篇。 在BLM模型中,战略意图篇提到的愿景和目标能否实现,以及怎么实现呢? 要回答这个问题,你就需要从市场上去寻找依据。 企业需…

央国企数字化转型难在哪?为什么要数字化转型?

随着新一轮科技革命和产业变革深入发展,数字化成为央国有企业的必答题。 但就目前情况来看,央国有企业数字化转型还面临着许多挑战,必然是一个长期的过程。 01 央国企数字化转型难在哪? 根据调研数据,中央企业数字化…

linux修改ip地址详解

修改IP地址分为临时修改(仍然属于动态分配),和永久修改(设置静态ip)。临时修改就是使用ifconfig命令直接修改,但是一段时间过后,或者重启又会动态重新分配。而永久修改则是直接将ip写在配置文件…

jenkins自动化部署

jenkins自动化部署 jenkins官网安装步骤 1. 安装环境 安装Java运行环境。Jenkins需要Java运行环境才能正常工作。您可以从Oracle官网下载Java运行环境并安装,或者使用您操作系统自带的Java运行环境。 sudo wget -O /etc/yum.repos.d/jenkins.repo \https://pkg.…

品牌在线上的困境

大家好! 我是小鱼 目前,在我们国内 有很多品牌从传统的 门店转为线上经营 那是不是意味着 品牌公司要把自己 的实体门店都关了呢? 并不是那样的。 很多品牌实现了 线上门店和实体门店 相结合的方式来 改造升级的 那么他们是如何做到的呢? 对…

存储框架封装:LruCacheUtils+DiskLruCacheUtils+责任链设计模式+DeepLink

存储框架封装:LruCacheUtilsDiskLruCacheUtils责任链设计模式DeepLink 一.存储框架实现思路?1.缓存策略2.LRU算法3.LruCache内存缓存原理4.DiskLruCache磁盘缓存原理5.使用单例模式实现LRUCacheUtils5.使用单例模式实现DiskLRUCacheUtils 二.什么是责任链设计模式&a…

ASP.NET Core 使用Filter和Redis实现接口防重

背景 日常开发中,经常需要对一些响应不是很快的关键业务接口增加防重功能,即短时间内收到的多个相同的请求,只处理一个,其余不处理,避免产生脏数据。 这和幂等性(idempotency)稍微有点区别&am…

凌恩生物文献分享 | 16S全长扩增子+代谢组/转录组多组学!高分paper的绝佳拍档!

16S全长扩增子联合代谢组/转录组多组学研究,是目前微生态研究趋势。单一研究方法较难发表高水平文章,多组学关联研究逐渐成为“快速”发表高分paper的绝佳拍档! 小编精心挑选了3篇医学微生态研究的高分文章,希望能帮助大家激发科…

二线程序员的出路

最近长沙不太平。去年被动离职一拨人之后,HR一直强调降本增效,人人自危,挤走一拨人,反正会有大量内卷失败的一线程序员进来填坑。当然留就有人走,前同事除了几个出去搞培训创业(后面解散了)的之…

chatgpt赋能Python-python_for_倒序

Python的倒序功能 - 从SEO角度分析 在Web开发中,搜索引擎优化(SEO)是一个关键的指标。如果你的网站能够被搜索引擎高效地索引,它就会排在搜索结果的前面,带来更多的流量和曝光率。Python,作为一种广泛应用…

【LED子系统】七、触发器实现

个人主页:董哥聊技术 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强公司! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! 文章目录…

探索未来:人工智能如何改变室内外设计

目录 注册: 使用RoomGPT进行室内和室外设计的步骤: 结果如下: RoomGPT是一款基于人工智能的设计工具,可以帮助专业人士和个人在几秒钟内生成照片般逼真的图像。以下是使用RoomGPT进行室内和室外设计的步骤: 注册&am…

聚观早报 | ChatGPT炒股回报率超500%;网易发布11新游戏

今日要闻:微信支付正式发布“微信刷掌”产品;ChatGPT炒股回报率超500%;网易发布11新游戏;国家超算中心发布中文大语言模型;B站试水付费专属视频 微信支付正式发布“微信刷掌”产品 5 月 21 日,北京轨道交通…

时序电路详解

1、什么是时序电路? 组合电路是根据当前输入信号的组合来决定输出电平的电路,换言之,就是现在的输出不会被过去的输入所左右,也可以说成是,过去的输入状态对现在的输出状态没有影响的电路。 时序电路和组合电路不同&…

「角」毫米波雷达前装增速放缓?哪些供应商位居TOP10

作为传统BSD(盲区监测、并线辅助)、DOW(开门预警)功能以及高阶智能驾驶的主要传感器之一,角(盲区)毫米波雷达在2022年实现了前装搭载的大幅增长。 高工智能汽车研究院监测数据显示,2…

Qt编写视频监控系统74-悬浮工具栏(半透明/上下左右位置/自定义按钮)

一、前言 在监控系统中一般在视频实时预览的时候,希望提供一个悬浮工具条,可以显示一些提示信息比如分辨率、码率、帧率,提供一堆快捷操作按钮,可以录像、抓拍、云台控制、关闭等操作,参考了国内很多监控厂商客户端软…

Spring Boot 整合 分布式搜索引擎 Elastic Search 实现 搜索、分页与结果过滤

文章目录 ⛄引言一、酒店搜索和分页⛅需求分析⚡源码编写 二、酒店结果过滤⌚需求分析⏰修改搜索业务 ✅效果图⛵小结 ⛄引言 本文参考黑马 分布式Elastic search Elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据…

【社群运营】AI智能对话,打造自动化社群

人工智能大背景下,各行各业都在往智能化发展,无论是办公产品,还是生产器械都选择接入了更加智能的AI来提高生产效率。那么,在日常的社群管理工作中,我们又能否跟上这一波热度,让社群自动化高效运营&#xf…

深度学习实战32-构建ChatT5模型,实现智能问答系统,类ChatGPT(CPU部署)

大家好,我是微学AI,今天给大家介绍一下深度学习实战32-构建ChatT5模型,实现智能问答系统,类ChatGPT(CPU部署),ChatT5使用了T5架构来处理输入文本,具有高度的并行性和扩展性,使其能够快速处理大规模数据集。与传统NLP模型不同,ChatT5采用端到端的方式进行训练,从而可以…