PyQt - QComboBox 控件



一个 QComboBox 对象提供了一个下拉列表供用户选择。它在表单上占据最小的屏幕空间,仅显示当前选中的项目。

组合框可以设置为可编辑的;它还可以存储pixmap对象。以下方法通常使用 -

以下是 QComboBox 最常用的方法。

序号 方法及描述
1

addItem()

将字符串添加到集合中

2

addItems()

将列表对象中的项目添加到集合中

3

Clear()

删除集合中的所有项目

4

count()

获取集合中项目的数量

5

currentText()

获取当前选中项目的文本

6

itemText()

显示属于特定索引的文本

7

currentIndex()

返回选中项目的索引

8

setItemText()

更改指定索引的文本

QComboBox 信号

序号 方法及描述
1

activated()

当用户选择一个项目时

2

currentIndexChanged()

无论何时当前索引发生更改,无论是用户还是程序更改

3

highlighted()

当列表中的某个项目被高亮显示时

示例 1:基本的 QComboBox 控件

要在 PyQt6 中创建一个基本的 QComboBox 控件,您首先需要导入必要的模块,然后实例化 QComboBox 类。在此示例中,我们创建了一个简单的主窗口,其中包含一个具有三个预定义选项的 QComboBox。

import sys
from PyQt6.QtWidgets import QApplication, QMainWindow, QComboBox

class MyWindow(QMainWindow):
   def __init__(self):
      super().__init__()
      self.setWindowTitle("QComboBox Example")
      self.setGeometry(200, 200, 300, 200)

      combobox = QComboBox(self)
      combobox.addItem("Option 1")
      combobox.addItem("Option 2")
      combobox.addItem("Option 3")
      combobox.move(50, 50)

app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec())

输出

以上代码产生以下输出 -

pyqt Qcombobox basic usage

示例 2:可编辑的组合框

默认情况下,QComboBox 不可编辑,这意味着用户只能从提供的选项中选择。但是,您可以启用编辑以允许用户输入自定义值。

在此示例中,我们将 QComboBox 的 editable 属性设置为 True,允许用户除了从提供的选项中选择外,还可以输入自定义值。

import sys
from PyQt6.QtWidgets import QApplication, QMainWindow, QComboBox

class MyWindow(QMainWindow):
   def __init__(self):
      super().__init__()
      self.setWindowTitle("Editable QComboBox")
      self.setGeometry(200, 200, 300, 200)

      combobox = QComboBox(self)
      combobox.setEditable(True)
      combobox.addItem("Option 1")
      combobox.addItem("Option 2")
      combobox.addItem("Option 3")
      combobox.move(50, 50)

app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec())

输出

以上代码产生以下输出 -

pyqt qcombobox example 2
广告