【PyQt小知识 - 3】: QComboBox下拉框内容的设置和更新、默认值的设置、值和下标的获取

QComboBox

内容的设置和更新

python 复制代码
from PyQt5.QtWidgets import *
import sys

app = QApplication(sys.argv)

mainwindow = QMainWindow()
mainwindow.resize(200, 200)
# 设置下拉框
comboBox = QComboBox(mainwindow)
comboBox.addItems(['上', '中', '下'])

button = QPushButton('更新', mainwindow)
button.move(100, 100)

def updata_comboBox():
    comboBox.clear()    # 清空内容
    comboBox.addItems(['A', 'B', 'C'])  # 添加更新内容

button.clicked.connect(updata_comboBox)

mainwindow.show()
sys.exit(app.exec_())

运行结果:


默认值的设置

根据值设置:QComboBox(parent).setCurrentText(text)

根据下标设置:QComboBox(parent).setCurrentIndex(index)

在以上示例代码中添加以下代码:

python 复制代码
comboBox.setCurrentText('下')    # 根据值设置默认值
# 等同于:comboBox.setCurrentIndex(2)     # 根据下标设置默认值

运行结果:

值和下标的获取

获取值:QComboBox(parent).currentText()

获取下标:QComboBox(parent).currentIndex()

python 复制代码
from PyQt5.QtWidgets import *
import sys


app = QApplication(sys.argv)

mainwindow = QMainWindow()
mainwindow.resize(200, 200)

comboBox = QComboBox(mainwindow)
comboBox.addItems(['上', '中', '下'])

button1 = QPushButton('获取值', mainwindow)
button1.move(50, 50)
button1.clicked.connect(lambda : print(comboBox.currentText()))

button2 = QPushButton('获取下标', mainwindow)
button2.move(50, 100)
button2.clicked.connect(lambda : print(comboBox.currentIndex()))

mainwindow.show()
sys.exit(app.exec_())

运行结果:


相关推荐
深蓝海拓7 小时前
PySide6从0开始学习的笔记(二十) qdarkstyle的深入应用
笔记·python·qt·学习·pyqt
我可以将你更新哟12 小时前
【PyQT-2】布局管理
pyqt
懷淰メ1 天前
python3GUI--基于深度学习的人脸识别管理系统(详细图文介绍)
人工智能·深度学习·人脸识别·pyqt·人脸·识别系统·人脸管理
我可以将你更新哟2 天前
【PyQT-4】QListWidget列表控件、QComboBox下拉列表控件、QTableWidget表格控件
开发语言·python·pyqt
我可以将你更新哟3 天前
【pyqt-1】把Qt Designer集成到pyCharm,PyQT(窗口、添加空控件、事件处理)
qt·pycharm·pyqt
懷淰メ3 天前
python3GUI--基于YOLOv8深度学习的车牌识别系统(详细图文介绍)
深度学习·opencv·yolo·pyqt·图像识别·车牌识别·pyqt5
大学生毕业题目4 天前
毕业项目推荐:90-基于yolov8/yolov5/yolo11的工程车辆检测识别系统(Python+卷积神经网络)
人工智能·python·yolo·目标检测·cnn·pyqt·工程车辆检测
深蓝海拓4 天前
PySide6从0开始学习的笔记(十八) MVC(Model-View-Controller)模式的图形渲染体系
笔记·python·qt·学习·pyqt
m0_635647485 天前
pyqt5打包报错:qt.qpa.plugin: Could not load the Qt platform plugin “windows“
开发语言·windows·python·qt·pyqt
深蓝海拓6 天前
PySide6从0开始学习的笔记(十二) QProgressBar(进度条)
笔记·python·qt·学习·pyqt