pyqt5中completer实现双击选择
时间: 2023-06-27 14:07:27 浏览: 53
在PyQt5中,可以通过设置QCompleter的完成模式(completionMode)为QCompleter.PopupCompletion来实现双击选择。
以下是一个示例代码:
```python
from PyQt5.QtWidgets import QApplication, QLineEdit, QCompleter, QWidget, QVBoxLayout
from PyQt5.QtCore import QStringListModel
app = QApplication([])
window = QWidget()
layout = QVBoxLayout()
edit = QLineEdit()
layout.addWidget(edit)
# 设置自动补全的选项列表
model = QStringListModel()
model.setStringList(['apple', 'banana', 'cherry'])
completer = QCompleter()
completer.setModel(model)
# 设置完成模式为PopupCompletion
completer.setCompletionMode(QCompleter.PopupCompletion)
edit.setCompleter(completer)
window.setLayout(layout)
window.show()
app.exec_()
```
在这个示例中,我们创建了一个QLineEdit编辑框,并设置了一个QCompleter自动补全器。我们使用QStringListModel来设置自动补全的选项列表,然后将其设置为QCompleter的模型。
接着,我们将QCompleter的完成模式设置为PopupCompletion,这意味着当用户双击自动补全项时,该项将被选中并插入到编辑框中。
最后,我们将QLineEdit的自动补全器设置为我们刚刚创建的QCompleter。