python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例


Posted in Python onFebruary 27, 2020

PyQt5下拉列表框控件QComboBox介绍

QComboBox是一个集按钮和下拉选项于一体的控件,也称做下拉列表框

QComboBox类中的常用方法如表

方法 描述
addItem() 添加一个下拉选项
addItems() 从列表中添加下拉选项
Clear() 删除下拉选项集合中的所有选项
count() 返回下拉选项集合中的数目
currentText() 返回选中选项的文本
itemText(i) 获取索引为i的item的选项文本
currentIndex() 返回选中项的索引
setItemText(int index,text) 改变序列号为index的文本

QComboBox类中的常用信号

信号 含义
Activated 当用户选中一个下拉选项时发射该信号
currentIndexChanged 当下拉选项的索引发生改变时发射该信号
highlighted 当选中一个已经选中的下拉选项时,发射该信号

下拉列表框控件QComboBox按钮的使用实例

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

class ComboxDemo(QWidget):
  def __init__(self,parent=None):
    super(ComboxDemo, self).__init__(parent)
    #设置标题
    self.setWindowTitle('ComBox例子')
    #设置初始界面大小
    self.resize(300,90)

    #垂直布局
    layout=QVBoxLayout()
    #创建标签,默认空白
    self.btn1=QLabel('')

    #实例化QComBox对象
    self.cb=QComboBox()
    #单个添加条目
    self.cb.addItem('C')
    self.cb.addItem('C++')
    self.cb.addItem('Python')
    #多个添加条目
    self.cb.addItems(['Java','C#','PHP'])
    #当下拉索引发生改变时发射信号触发绑定的事件
    self.cb.currentIndexChanged.connect(self.selectionchange)

    #控件添加到布局中,设置布局
    layout.addWidget(self.cb)
    layout.addWidget(self.btn1)
    self.setLayout(layout)

  def selectionchange(self,i):
    #标签用来显示选中的文本
    #currentText():返回选中选项的文本
    self.btn1.setText(self.cb.currentText())
    print('Items in the list are:')
    #输出选项集合中每个选项的索引与对应的内容
    #count():返回选项集合中的数目
    for count in range(self.cb.count()):
      print('Item'+str(count)+'='+self.cb.itemText(count))
      print('current index',i,'selection changed',self.cb.currentText())

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

效果图如下

python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例

下拉列表框控件QComboBox代码分析:

在这个例子中显示了一个下拉列表框和一个标签,其中下拉列表框中有几个选项,既可以使用QCombobox的addItem()方法添加单个选项,也可以使用addItems()方法添加多个选项:标签显示的是从下拉列表框中选择的选项

#单个添加条目
    self.cb.addItem('C')
    self.cb.addItem('C++')
    self.cb.addItem('Python')
    #多个添加条目
    self.cb.addItems(['Java','C#','PHP'])

当下拉列表框选中的选项发生改变时将发射currentIndexChanged信号,链接到自定义的槽函数selectionChange()

self.cb.currentIndexChanged.connect(self.selectionchange)

在方法中,当选中下拉列表框中的一个选项时,将把该选项文本设置为标签的文本,并调整标签的大小

def selectionchange(self,i):
    #标签用来显示选中的文本
    #currentText():返回选中选项的文本
    self.btn1.setText(self.cb.currentText())

本文详细介绍了PyQt5下拉列表框控件QComboBox详细使用方法与实例,更多关于PyQt5下拉列表框控件QComboBox的知识请查看下面的相关链接

Python 相关文章推荐
Python实现扫描指定目录下的子目录及文件的方法
Jul 16 Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 Python
Flask Web开发入门之文件上传(八)
Aug 17 Python
transform python环境快速配置方法
Sep 27 Python
python批量修改图片后缀的方法(png到jpg)
Oct 25 Python
python绘制散点图并标记序号的方法
Dec 11 Python
tf.concat中axis的含义与使用详解
Feb 07 Python
Python matplotlib可视化实例解析
Jun 01 Python
查看keras各种网络结构各层的名字方式
Jun 11 Python
python单元测试框架pytest的使用示例
Oct 07 Python
Python使用grequests并发发送请求的示例
Nov 05 Python
教你怎么用Python selenium操作浏览器对象的基础API
Jun 23 Python
Python 之 Json序列化嵌套类方式
Feb 27 #Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
Feb 27 #Python
python GUI库图形界面开发之PyQt5控件数据拖曳Drag与Drop详细使用方法与实例
Feb 27 #Python
python脚本实现mp4中的音频提取并保存在原目录
Feb 27 #Python
python列表切片和嵌套列表取值操作详解
Feb 27 #Python
Python递归实现打印多重列表代码
Feb 27 #Python
Python各种扩展名区别点整理
Feb 27 #Python
You might like
通过ICQ网关发送手机短信的PHP源程序
2006/10/09 PHP
php flush类输出缓冲剖析
2008/10/19 PHP
PHPMailer邮件发送的实现代码
2013/05/04 PHP
JavaScript访问样式表代码
2010/10/15 Javascript
js 处理URL实用技巧
2010/11/23 Javascript
jquery 实现窗口的最大化不论什么情况
2013/09/03 Javascript
Jquery 动态循环输出表格具体方法
2013/11/23 Javascript
AngularJS入门教程中SQL实例详解
2016/07/27 Javascript
js格式化时间的简单实例
2016/11/27 Javascript
正则 js分转元带千分符号详解
2017/03/08 Javascript
js中Array对象的常用遍历方法详解
2019/01/17 Javascript
小程序中this.setData的使用和注意事项
2019/08/28 Javascript
高性能js数组去重(12种方法,史上最全)
2019/12/21 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
[51:14]LGD vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
总结Python编程中函数的使用要点
2016/03/20 Python
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
查看TensorFlow checkpoint文件中的变量名和对应值方法
2018/06/14 Python
Python中flatten( )函数及函数用法详解
2018/11/02 Python
详解Python装饰器
2019/03/25 Python
python3获取当前目录的实现方法
2019/07/29 Python
python return逻辑判断表达式实现解析
2019/12/02 Python
将labelme格式数据转化为标准的coco数据集格式方式
2020/02/17 Python
Selenium python时间控件输入问题解决方案
2020/07/22 Python
Python中用xlwt制作表格实例讲解
2020/11/05 Python
加拿大女包品牌:Matt & Nat
2017/05/12 全球购物
美国狗旅行和户外用品领先供应商:kurgo
2020/08/18 全球购物
《木笛》教学反思
2014/03/01 职场文书
大学竞选班干部演讲稿
2014/08/21 职场文书
法学专业大学生实习自我鉴定
2014/10/05 职场文书
师德先进个人材料
2014/12/20 职场文书
团组织推荐意见
2015/06/05 职场文书
Python爬取科目四考试题库的方法实现
2021/03/30 Python