您的位置 首页 > 数码极客

qcombobox如何处理选中事件


QComboBox简介

QComboBox下拉列表框,是一个集按钮和下拉列表选项于一体的部件。QComboBox提供了一种向用户呈现选项列表的方式,其占用最小量的屏幕空间。

QComboBox中的常用方法:

  • addItem(): 添加一个下拉选项;
  • addItems(): 从列表中添加下拉选项;
  • clear(): 删除下拉选项集合中的所有选项;
  • count(): 返回下拉选项集合中的数目;
  • currentText(): 返回选中选项的文本;
  • itemText(index): 获取索引为index的item的选项文本;
  • currentIndex(): 返回选中项的索引;
  • setItemText(index, text): 改变序列号为index的文本。

QComboBox中的常用信号:

  • activated: 当用户选中一个下拉选项时发射该信号;
  • currentIndexChanged: 当下拉选项的索引发生改变时发射该信号;
  • highlighted: 当选中一个已经选中的下拉选项时,发射该信号。

QComboBox类继承关系:

测试QComboBox

创建文件qcombobox.py, 实现两个QCombobox联动,当选中分类里的某类植物时,在植物下拉列表中列出相应的植物。完整代码如下:

import sys from PyQt5 import QtCore, QtGui, QtWidgets from PyQ import (QApplication, QMainwindow, QLabel, QComboBox)   class DemoComboBox(QMainWindow):     def __init__(self, parent=None):         super(DemoComboBox, self).__init__(parent)                  # 设置窗口标题         ('实战PyQt5: QComboBox Demo!')               # 设置窗口大小         (400, 240)                   = {'蔬菜': ['茄子', '苦瓜', '南瓜', '西红柿'], '花卉': ['兰花', '桂花', '荷花'], '水果': ['桃子', '橘子', '芒果'] }                  QLabel('分类:', self).move(10, 10)          = QComboBox(self)         .addItem('--请选择--')         .addItem('蔬菜')          .addItem('花卉')         .addItems(['水果', '多肉植物'])         .setGeometry(10, 40, 100, 30)         .currentIndexChanged.connect(Changed)                    QLabel('植物:', self).move(160, 10)          =  QComboBox(self)         .addItem('--请选择--')         .setGeometry(160, 40, 100, 30)         .currentTextChanged.connect(Changed)                  #显示选中的信息          = QLabel(self)         .setGeometry(10, 200, 300, 30)              def catalogChanged(self):         cat = .currentText()         .clear()         if cat != '--请选择--':             .addItems([cat]) if cat in .keys() else ['--请选择--']         else:             .addItem('--请选择--')          def plantChanged(self):         if .currentText() != '--请选择--':             .setText('分类: ' + .currentText() + '  品种: ' + .currentText())                if __name__ == '__main__':     app = QApplication)     window = DemoComboBox()     window.show()     ())    

运行结果如下图所示:

测试QComboBox

本文知识点

  • QComboxBox添加选项的方法;
  • 两QComboxBox的选项联动。

喜欢本文内容就收藏,点赞,评论,关注和转发。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“qcombobox如何处理选中事件”边界阅读