QComboBox主要實現下拉列表,以及選中列表中元素的回調,回調方法和QPushButton類似,都是基於Qt的信號和槽實現。
#-*- coding:utf-8 -*-
import sys
from PyQt5.QtWidgets import (QApplication,QWidget,QLabel,QComboBox)
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.lbl = QLabel("MacOS",self)
combo = QComboBox(self)
combo.addItem("MacOs")
combo.addItem("Ubuntu")
combo.addItem("Fedora")
combo.addItem("Arch")
combo.addItem("Gentoo")
combo.move(50,50)
self.lbl.move(50,150)
combo.activated[str].connect(self.onActivated)
self.setGeometry(300,300,300,200)
self.setWindowTitle('QComboBox')
self.show()
def onActivated(self,text):
self.lbl.setText(text)
self.lbl.adjustSize()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
結果如下: