Python Qt GUI设计:QComboBox下拉列表框类(基础篇—14)

举报
不脱发的程序猿 发表于 2021/10/20 01:02:59 2021/10/20
【摘要】 QComboBox是一个集按钮和下拉选项于一体的控件,也被称为下拉列表框。 QComboBox类中的常用方法如下表所示: QComboBox类中的常用信号如下表所示:  来看看QComboBox按钮类的示例,效果如下所示: 在这个例子中显示了一个下拉列表框和一个标签,其中下拉列表框中有5个选项,既可以使用Q...

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

QComboBox类中的常用方法如下表所示:

QComboBox类中的常用信号如下表所示: 

来看看QComboBox按钮类的示例,效果如下所示:

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

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

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

实现代码如下所示:


  
  1. import sys
  2. from PyQt5.QtCore import *
  3. from PyQt5.QtGui import *
  4. from PyQt5.QtWidgets import *
  5. class ComboxDemo(QWidget):
  6. def __init__(self, parent=None):
  7. super(ComboxDemo, self).__init__(parent)
  8. self.setWindowTitle("combox 例子")
  9. self.resize(300, 90)
  10. layout = QVBoxLayout()
  11. self.lbl = QLabel("" )
  12. self.cb = QComboBox()
  13. self.cb.addItem("C")
  14. self.cb.addItem("C++")
  15. self.cb.addItems(["Java", "C#", "Python"])
  16. self.cb.currentIndexChanged.connect(self.selectionchange)
  17. layout.addWidget(self.cb)
  18. layout.addWidget(self.lbl )
  19. self.setLayout(layout)
  20. def selectionchange(self,i):
  21. self.lbl.setText( self.cb.currentText() )
  22. self.lbl.adjustSize()
  23. print( "Items in the list are :" )
  24. for count in range(self.cb.count()):
  25. print( 'item'+str(count) + '='+ self.cb.itemText(count) )
  26. print( "Current index",i,"selection changed ",self.cb.currentText() )
  27. if __name__ == '__main__':
  28. app = QApplication(sys.argv)
  29. comboxDemo = ComboxDemo()
  30. comboxDemo.show()
  31. sys.exit(app.exec_())

文章来源: handsome-man.blog.csdn.net,作者:不脱发的程序猿,版权归原作者所有,如需转载,请联系作者。

原文链接:handsome-man.blog.csdn.net/article/details/120681661

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。