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

运行结果:


相关推荐
Humbunklung10 小时前
PySide6 GUI 学习笔记——常用类及控件使用方法(多行文本控件QTextEdit)
笔记·python·学习·pyqt
En^_^Joy2 天前
PyQt常用控件的使用:QFileDialog、QMessageBox、QTreeWidget、QRadioButton等
开发语言·python·pyqt
zhlei_123452 天前
封闭内网安装配置VSCode Anconda3 并配置 PyQt5开发
ide·vscode·pyqt
猫头虎3 天前
零基础安装 Python 教程:从下载到环境配置一步到位(支持 VSCode 和 PyCharm)与常用操作系统操作指南
vscode·python·pycharm·beautifulsoup·numpy·pyqt·pip
江畔柳前堤11 天前
PyQt学习系列08-插件系统与模块化开发
运维·开发语言·数据库·python·学习·机器学习·pyqt
江畔柳前堤14 天前
PyQt学习系列05-图形渲染与OpenGL集成
开发语言·javascript·人工智能·python·学习·ecmascript·pyqt
江畔柳前堤14 天前
PyQt学习系列11-综合项目:多语言文件管理器
开发语言·网络·python·学习·django·pyqt
幽络源小助理15 天前
基于Yolov8+PyQT的老人摔倒识别系统源码
yolo·pyqt
江畔柳前堤15 天前
PyQt学习系列07-数据库操作与ORM集成
数据库·学习·算法·机器学习·架构·pyqt
江畔柳前堤16 天前
PyQt学习系列10-性能优化与调试技巧
开发语言·javascript·数据库·学习·性能优化·ecmascript·pyqt