快捷搜索:  汽车  科技

pyqt5 如何为窗体设置固定边框(014-下拉列表框控件QComboBox)

pyqt5 如何为窗体设置固定边框(014-下拉列表框控件QComboBox)喜欢本文内容就收藏,点赞,评论,关注和转发。创建文件qcombobox.py 实现两个QCombobox联动,当选中分类里的某类植物时,在植物下拉列表中列出相应的植物。完整代码如下:importsys fromPyQt5importQtCore QtGui QtWidgets fromPyQt5.QtWidgetsimport(QApplication QMainwindow QLabel QComboBox) classDemoComboBox(QMainWindow): def__init__(self parent=None): super(DemoComboBox self).__init__(parent) #设置窗口标题 self.setWindowTitle('实战PyQt5:QComboBoxDemo!') #设置窗口大小 self.resize(40

pyqt5 如何为窗体设置固定边框(014-下拉列表框控件QComboBox)(1)

QComboBox简介

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

QComboBox中的常用方法:

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

QComboBox中的常用信号:

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

QComboBox类继承关系:

pyqt5 如何为窗体设置固定边框(014-下拉列表框控件QComboBox)(2)

测试QComboBox

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

importsys fromPyQt5importQtCore QtGui QtWidgets fromPyQt5.QtWidgetsimport(QApplication QMainwindow QLabel QComboBox) classDemoComboBox(QMainWindow): def__init__(self parent=None): super(DemoComboBox self).__init__(parent) #设置窗口标题 self.setWindowTitle('实战PyQt5:QComboBoxDemo!') #设置窗口大小 self.resize(400 240) self.plants={'蔬菜':['茄子' '苦瓜' '南瓜' '西红柿'] '花卉':['兰花' '桂花' '荷花'] '水果':['桃子' '橘子' '芒果']} QLabel('分类:' self).move(10 10) self.catalog=QComboBox(self) self.catalog.addItem('--请选择--') self.catalog.addItem('蔬菜') self.catalog.addItem('花卉') self.catalog.addItems(['水果' '多肉植物']) self.catalog.setGeometry(10 40 100 30) self.catalog.currentIndexChanged.connect(self.catalogChanged) QLabel('植物:' self).move(160 10) self.plant=QComboBox(self) self.plant.addItem('--请选择--') self.plant.setGeometry(160 40 100 30) self.plant.currentTextChanged.connect(self.plantChanged) #显示选中的信息 self.info=QLabel(self) self.info.setGeometry(10 200 300 30) defcatalogChanged(self): cat=self.catalog.currentText() self.plant.clear() ifcat!='--请选择--': self.plant.addItems(self.plants[cat])ifcatinself.plants.keys()else['--请选择--'] else: self.plant.addItem('--请选择--') defplantChanged(self): ifself.catalog.currentText()!='--请选择--': self.info.setText('分类:' self.catalog.currentText() '品种:' self.plant.currentText()) if__name__=='__main__': app=QApplication(sys.argv) window=DemoComboBox() window.show() sys.exit(app.exec())

运行结果如下图所示:

pyqt5 如何为窗体设置固定边框(014-下拉列表框控件QComboBox)(3)

测试QComboBox

本文知识点
  • QComboxBox添加选项的方法;
  • 两QComboxBox的选项联动。

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

猜您喜欢: