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

运行结果:


相关推荐
mortimer5 天前
【实战复盘】 PySide6 + PyTorch 偶发性“假死”?由多线程转多进程
pytorch·python·pyqt
S***y3967 天前
算法挑战算法的广泛应用,它们也带来了一系列挑战,这些挑战不仅关乎技术层面,更涉及伦理、法律和社会等多个维度。
kafka·pyqt·宽度优先
AI视觉网奇8 天前
pyqt 横竖屏切换
pyqt
mortimer11 天前
从零打造一款桌面实时语音转文字工具:PySide6 与 Sherpa-Onnx 的实践
python·github·pyqt
开心-开心急了12 天前
PySide6/PyQt Ctrl 滚轮 实现文本缩放功能
pyqt·pyside
B站_计算机毕业设计之家15 天前
深度学习:Yolo水果检测识别系统 深度学习算法 pyqt界面 训练集测试集 深度学习 数据库 大数据 (建议收藏)✅
数据库·人工智能·python·深度学习·算法·yolo·pyqt
懷淰メ17 天前
python3GUI--短视频社交软件 By:Django+PyQt5(前后端分离项目)
后端·python·django·音视频·pyqt·抖音·前后端
开心-开心急了17 天前
pyside6实现win10自动切换主题
开发语言·python·pyqt·pyside
梨轻巧22 天前
pyside6的历史发展、Qt 介绍、PyQt 和 pyside6对比
qt·pyqt