python - 如何在 PyQt/PySide 中将 QComboBox 设置为项目文本中的项目

标签 python pyqt pyqt5 pyside qcombobox

是否可以将 QComboBox 设置为只知道项目文本值的项目?我试图避免遍历 for i in range(myCombobox.count()) 只是为了找到一个项目的索引,以便它可以用来设置当前索引。

最佳答案

是的,有 QComboBox.findText ,它将返回匹配项的索引(或 -1,如果没有的话)。默认情况下,搜索会进行精确的、区分大小写的匹配,但您可以通过传递一些 match-flags 来调整行为。作为第二个论点。例如,要进行大小写不敏感匹配:

    index = combo.findText(text, QtCore.Qt.MatchFixedString)
    if index >= 0:
         combo.setCurrentIndex(index)

还有一个等价的findData与项目数据匹配的方法。

关于python - 如何在 PyQt/PySide 中将 QComboBox 设置为项目文本中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22797794/

相关文章:

python - 添加标签如何更改文本文件 - Tkinter?

python - 我如何在我的障碍物或我的机器人周围添加一个安全区?

python - 从 tableView 模型打印单击行的数据

python - QListWidget 所选项目按行排序

python - 尝试在 PyQT5 中打开文件时出现无效文件错误

Python子对象无法访问父属性

python - 在 Django 上从 django.contrib.auth.User 设置非必填字段

python - Tensorflow Eager 模式 : First execution on GPU slow

python - PyQt 应用程序中的线程 : Use Qt threads or Python threads?

python - 如何使用传感器 R305 搜索已保存的指纹?