如何在PyQt4中创建自动完成下拉框?

3 投票
2 回答
6418 浏览
提问于 2025-04-17 20:29

如何在PyQt4中创建自动完成的下拉框?

我想要的例子是:

http://jqueryui.com/autocomplete/#combobox

2 个回答

5

combobox.setEditable(True) combobox.completer().setCompletionMode(QtGui.QCompleter.PopupCompletion) combobox.setInsertPolicy(QComboBox.NoInsert)

第一行:只有可编辑的下拉框才能使用自动补全功能。

第二行:设置自动补全的行为。

最后一行:不允许用户往列表里添加新项目(这样可以更好地符合你提供的示例行为)。

6

要让你的程序表现得和例子一样,你需要改变下组合框的自动补全模式。

默认情况下,自动补全模式是“内联”,也就是说只会显示你选中的文本,没有其他选择。如果你想要看到一个下拉列表,显示所有可能的选项,可以这样做:

    combobox.completer().setCompletionMode(QtGui.QCompleter.PopupCompletion)

撰写回答