【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_())

运行结果:


相关推荐
云空1 天前
《PyQt6-3D应用开发技术文档》
3d·pyqt
sword devil9001 天前
PYQT实战:无刷电机模拟(只是模拟,没有写接口接收外部数据)
pyqt
sword devil9004 天前
PYQT实战:智能家居中控
python·智能家居·pyqt
OICQQ676580089 天前
创建一个基于YOLOv8+PyQt界面的驾驶员疲劳驾驶检测系统 实现对驾驶员疲劳状态的打哈欠检测,头部下垂 疲劳眼睛检测识别
yolo·pyqt·疲劳驾驶·检测识别·驾驶员检测·打哈欠检测·眼睛疲劳
小灰灰搞电子18 天前
Qt PyQt与PySide技术-C++库的Python绑定
c++·qt·pyqt
越甲八千19 天前
pyqt 简单条码系统
数据库·microsoft·pyqt
重生之我在厦门做测试20 天前
基于pyqt开发串口和对应映射值(path)的显示工具
pyqt
hvinsion23 天前
【开源解析】基于Python+Qt打造智能应用时长统计工具 - 你的数字生活分析师
python·pyqt·开源软件·应用时长统计
毕设做完了吗?1 个月前
基于YOLOv8+Deepface的人脸检测与识别系统
python·yolo·毕业设计·pyqt
懷淰メ1 个月前
python3GUI--基于PyQt5+DeepSort+YOLOv8智能人员入侵检测系统(详细图文介绍)
开发语言·深度学习·yolo·目标检测·pyqt·课程设计·deepsort