微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PyQt QCompleter 中的限制行数

如何解决PyQt QCompleter 中的限制行数

如何限制 PyQt QCompleter 中显示的行数。例如,如果有 10 个匹配项,我将如何限制。这是我的代码

from PyQt5.QtWidgets import *
from PyQt5 import QtCore
import sys

class Window(QWidget):
    def __init__(self):
        QWidget.__init__(self)
        layout = qgridLayout()
        self.setLayout(layout)
                                              
        names = ["Apple","Alps","August","Alpha","Ate","A""Berry","Cherry" ]
        completer = QCompleter(names)
                               
        self.lineedit = QLineEdit()
        self.lineedit.setCompleter(completer)
        layout.addWidget(self.lineedit,0)

app = QApplication(sys.argv)
screen = Window()
screen.show()
sys.exit(app.exec_())

我确实尝试过查看 this link,但根本不明白。当我尝试设置模型时,我不断收到错误消息。

解决方法

如果要在 QCompleter 中设置最大可见元素,则必须使用 maxVisibleItems 属性:

completer.setMaxVisibleItems(10)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。