限制 PyQt QCompleter 中的行数
Limit Number Of Rows in 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, 0)
app = QApplication(sys.argv)
screen = Window()
screen.show()
sys.exit(app.exec_())
我确实试着看 this link,但根本没看懂。当我尝试设置模型时,我一直出错。
如果你想在 QCompleter 中设置可见元素的最大值,那么你必须使用 maxVisibleItems
属性:
completer.setMaxVisibleItems(10)
如何限制 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, 0)
app = QApplication(sys.argv)
screen = Window()
screen.show()
sys.exit(app.exec_())
我确实试着看 this link,但根本没看懂。当我尝试设置模型时,我一直出错。
如果你想在 QCompleter 中设置可见元素的最大值,那么你必须使用 maxVisibleItems
属性:
completer.setMaxVisibleItems(10)