码迷,mamicode.com
首页 > 其他好文 > 详细

下拉选择框QCombox

时间:2019-02-10 09:38:27      阅读:559      评论:0      收藏:0      [点我收藏+]

标签:init   self   fun   选中   选项   count   index   mamicode   current   

 

技术图片

下拉列表框样式如图:

技术图片

字体列表框样式:

技术图片

 

 1 import sys
 2 from PyQt5.QtWidgets import QApplication, QWidget, QComboBox, QFontComboBox, QLineEdit, QMessageBox, QVBoxLayout
 3 import time
 4 
 5 class Demo(QWidget):
 6     choice = a
 7     choice_list = [b, c, d, e]
 8 
 9     def __init__(self):
10         super(Demo, self).__init__()
11 
12         self.combobox_1 = QComboBox(self)  # 实例化下拉列表框
13         self.combobox_2 = QFontComboBox(self)  # 实例化字体列表框
14 
15         self.lineedit = QLineEdit(self)
16 
17         self.v_layout = QVBoxLayout()
18 
19         self.layout_init()
20         self.combobox_init()
21         
22 
23     def layout_init(self):
24         self.v_layout.addWidget(self.combobox_1)
25         self.v_layout.addWidget(self.combobox_2)
26         self.v_layout.addWidget(self.lineedit)
27 
28         self.setLayout(self.v_layout)
29 
30     def combobox_init(self):
31         self.combobox_1.addItem(self.choice)  # 添加一个选项
32         self.combobox_1.addItems(self.choice_list)  # 添加容器中的参数。容器:可迭代的
33         self.combobox_1.currentIndexChanged.connect(lambda: self.on_combobox_func(self.combobox_1))
34         #选项索引号发生变化时发出信号
35         # self.combobox_1.currentTextChanged.connect(lambda: self.on_combobox_func(self.combobox_1))
36         #当文本内容发生变化时发出信号
37 
38         self.combobox_2.currentFontChanged.connect(lambda: self.on_combobox_func(self.combobox_2))
39         #字体选项发生变化时发出信号
40 
41     def on_combobox_func(self, combobox):
42         if combobox == self.combobox_1:
43             QMessageBox.information(self, ComboBox 1,
44                                     {}: {}.format(combobox.currentIndex(), combobox.currentText()))
45             #combobox.currentIndex() 返回当前索引号
46             #combobox.currentText()  返回当前选项的文本
47         else:
48             self.lineedit.setFont(combobox.currentFont())
49             #单行文本编辑框设置字体
50             #combobox.currentFont()  字体选择框中当前的字体
51 
52 
53 
54 if __name__ == __main__:
55     app = QApplication(sys.argv)
56     demo = Demo()
57     demo.show()
58     sys.exit(app.exec_())

 

 1 import sys
 2 from PyQt5.QtWidgets import QApplication, QWidget, QComboBox
 3 
 4 class Demo(QWidget):
 5     choice = a
 6     choice_list = [物理,化学,数学,语文,历史]
 7 
 8 
 9     def __init__(self):
10         super(Demo, self).__init__()
11 
12         self.combobox_1 = QComboBox(self)
13         self.combobox_1.addItems(Demo.choice_list)
14         #self.combobox_1.clear()   #清空列表框
15         count=self.combobox_1.count()   #返回项目总数
16         s=self.combobox_1.itemText(2)  #返回指定索引项的文本【索引号从0开始】
17         self.combobox_1.setItemText(2,‘外语‘)   #修改指定索引项的文本
18         self.combobox_1.highlighted.connect(self.ac)   #鼠标指向新选项时就发出信号
19 
20     def ac(self):
21         print(你选中一个选项)
22 
23 if __name__ == __main__:
24     app = QApplication(sys.argv)
25     demo = Demo()
26     demo.show()
27     sys.exit(app.exec_())

 

下拉选择框QCombox

标签:init   self   fun   选中   选项   count   index   mamicode   current   

原文地址:https://www.cnblogs.com/liming19680104/p/10358648.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!