第15.41节、PyQt(Python+Qt)入门学习:输入部件QComboBox组合框功能详解
一、概述
Designer中输入工具部件中的Combo Box组合框与其他可视化工具组合框功能相同,组合了按钮和弹出列表的功能,显示当前项并可以弹出可选择项的列表。组合框可以编辑,允许用户修改列表中的每个项。Combo Box组合框对应PyQt中的类QComboBox。
二、组合框项的属性
在Designer中,组合框可设置的项属性包括如下:

各属性简介如下:
- editable:editable用于控制用户是否可对组合框进行编辑,使用setEditable()设置是否允许组合框进行编辑,其是否可编辑状态通过isEditable()方法访问
- currentText:currentText保存当前文本,如果组合框是可编辑的,则当前文本是组合框编辑框显示的值,如果是不可编辑的,且组合框为空或未设置当前项,则为当前项的值或空字符串。使用方法currentText()获取当前文本,使用方法setCurrentText()设置当前文本,在设置当前文本时,如果组合框是可编辑的,setCurrentText()只是调用setEditText()方法设置编辑框内的文本值,如果是不可编辑的切列表中有匹配的文本,则currentIndex设置为对应项的索引
- maxVisibleItems:maxVisibleItems用于控制组合框内最多可见的项数,通过方法maxVisibleItems()和setMaxVisibleItems()来访问
- maxCount:maxCount保存组合框弹出列表中最大项数,用于限制组合框中可以包含的最大项数,其缺省值是最大的带符号整数,典型值是2147483647。可以通过maxCount()和setMaxCount()方法访问
- insertPolicy:insertPolicy用于控制用户执行编辑框中项插入的策略,其类型为枚举类型QComboBox.InsertPolicy,默认值是QComboBox.InsertAtBottom,即插入到底部,可以通过方法insertPolicy()和方法setInsertPolicy()来访问
- minimumContentsLength:用于控制组合框应包含的最小字符个数,缺省值为0,可以通过方法minimumContentsLength()和setMinimumContentsLength访问
- iconSize:用于控制组合框中显示的图标的大小。除非显式设置,否则返回当前样式的默认值。此大小是图标可以具有的最大大小;较小大小的图标不会放大。可以通过方法iconSize()和setIconSize()来访问
- duplicatesEnabled:用于控制是否允许用户添加重复项,缺省值为False,可以通过方法duplicatesEnabled()和setDuplicatesEnabled()进行访问
- frame:用于控制组合框是否显示框架,缺省值为True,可以通过方法hasFrame() 和setFrame()来访问
- modelColumn:用于控制模型中哪列在组合框弹出列表中可见。
三、组合框项的操作方法
组合框的主要操作方法都是基于项进行访问的方法,包括:
- 使用方法insertItem()和insertItems()插入项
- 使用setItemText()更改项
- 使用removeItem()删除项
- 使用clear()删除所有项
- 使用currentText()访问当前项的文本
- 使用text()方法访问指定序号项的文本
- 使用setCurrentIndex()设置当前项
- 使用count()获取组合框中的项数
- 使用clearEditText()清除可编辑组合框显示的字符串而不更改组合框的内容
四、对项的操作会触发如下相关信号:
- 组合框的当前项更改,会发出两个信号:currentIndexChanged()和activated()
- 当用户在组合框弹出列表中突出显示某个项时,将发出highlighted()信号
- 每当可编辑组合框的文本发生更改时,都会发出editTextChanged()信号。
广告
老猿关于PyQt的付费专栏《使用PyQt开发图形界面Python应用》只需要9.9元,该部分与第十五章的内容基本对应,但同样内容在付费专栏上总体来说更详细、案例更多。本节内容对应付费专栏的《第三十四章、PyQt中的输入部件:QComboBox组合框功能详解》。如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。

老猿Python,跟老猿学Python!
第15.41节、PyQt(Python+Qt)入门学习:输入部件QComboBox组合框功能详解的更多相关文章
- 第15.12节PyQt(Python+Qt)入门学习:可视化设计界面组件布局详解
一.引言 在Qt Designer中,在左边部件栏的提供了界面布局相关部件,如图: 可以看到共包含有四种布局部件,分别是垂直布局(Vertical Layout).水平布局(Horizontal La ...
- 第15.21节 PyQt(Python+Qt)入门学习:QListView的作用及属性详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 QListView是从QAbstractItemView 派生的类,实现了QAbstrac ...
- 第15.25节 PyQt(Python+Qt)入门学习:Model/View开发实战--使用QTableView展示Excel文件内容
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 在前面的订阅专栏<第十九章.Model/View开发:QTableView的功能及属 ...
- 第15.28节 PyQt(Python+Qt)入门学习:Model/View架构中的便利类QTableWidget详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 表格部件为应用程序提供标准的表格显示工具,在表格内可以管理基于行和列的数据项,表格中的最大 ...
- 第15.27节 PyQt(Python+Qt)入门学习:Model/View架构中的便利类QTreeWidget详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 树部件(Tree Widget)是Qt Designer中 Item Widgets(It ...
- 第15.26节 PyQt(Python+Qt)入门学习:Model/View架构中的便利类QListWidget详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 列表部件(List Widget)对应类QListWidget,是从QListView派生 ...
- 第15.38节 PyQt(Python+Qt)入门学习:containers容器类部件QDockWidget停靠窗功能详解
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 一.概述 QDockWidget类提供了一个可以停靠在QMainWin ...
- 第15.18节 PyQt(Python+Qt)入门学习:Model/View架构中视图Item Views父类详解
老猿Python博文目录 老猿Python博客地址 一.概述 在PyQt图形界面中,支持采用Model/View架构实现数据和界面逻辑分离,其中Model用于处理数据存储,View用于界面数据展现,当 ...
- 第15.37节 PyQt(Python+Qt)入门学习:containers容器类部件QMdiArea多文档界面部件详解及编程开发案例
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 一.引言 老猿在前期学习PyQt相关知识时,对每个组件的属性及方法都研 ...
随机推荐
- 等效介质理论模型---利用S参数反演法提取超材料结构的等效参数
等效介质理论模型---利用S参数反演法提取超材料结构的等效参数 S参数反演法,即利用等效模型的传输矩阵和S参数求解超材料结构的等效折射率n和等效阻抗Z的过程.本文对等效介质理论模型进行了详细介绍,并提 ...
- UnixIPC之共享内存
Unix-IPC之共享内存 一,共享内存的概念 共享内存通信技术是一种最快的可用IPC形式,它是针对其他通信机制运行效率低和设计的新型通信技术(其他的如:信号量,管道,套接字等).这种通信技术往往与其 ...
- pthread 多线程基础
本文主要介绍如何通过 pthread 库进行多线程编程,并通过以下例子进行说明. 基于莱布尼兹级数计算 \(\pi\) . 多线程归并排序 参考文章: [1] https://computing.ll ...
- 二:Tomcat与登录
在使用Tomcat部署服务器之前我们需要写一个页面登录的HTML文本 该文本如下 <!DOCTYPE html> <html> <head> <meta ch ...
- hadoop启动脚本
记录一下一个简单的hadoop启动脚本 就是启动zookeeper集群,hadoop的HDFS和YRAN的脚本 start-cluster.sh 关于关闭的脚本,只需要顺序换一下,然后将start改为 ...
- tcp黏包问题与udp为什么不黏包
1.先说下subprocess模块的用法,为了举个黏包的例子 # 通过一个例子 来认识网络编程中的一个重要的概念 # 所有的客户端执行server端下发的指令,执行完毕后,客户端将执行结果给返回给服务 ...
- Nginx实例
一.反向代理 反向代理实例一 1.实现效果 打开浏览器,在浏览器地址栏输入地址www.pluto.com,跳转到 liunx 系统 tomcat 主页面中 2.准备工作 [1].安装tomcat [r ...
- sqlilab less1-less10
less-1 参数被单引号包裹,加单引号,闭合后绕过 less-2 参数没有被包裹,直接带入查询,不需要闭合 less-3 参数被 ('$id') 包裹,需要将他闭合 less-4 参数被小括号和双引 ...
- php(tp5)实现分页效果
public function admin(){ if(request()->isPost()){ //获取第二页的数据传current = 2过来即可 $post['origin'] = in ...
- 关于GoldWave为Vegas制作音频交叉淡化特效的教程分享
在Vegas里对音频交叉淡化的处理,是通过将两段音频交叠.调整交叠部分的音量.选取交叉淡化类型这三步来实现的,许多步骤是在音频轨道拖动音量线来实现的,操作上不够灵敏精细.其实,单就音频的交叉淡化处理, ...