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
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联动,当选中分类里的某类植物时,在植物下拉列表中列出相应的植物。完整代码如下:
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())
运行结果如下图所示:
测试QComboBox
本文知识点- QComboxBox添加选项的方法;
- 两QComboxBox的选项联动。
喜欢本文内容就收藏,点赞,评论,关注和转发。