QLineEdit AutoComplete不适用于Unicode字符串列表

时间:2019-05-01 04:44:56

标签: python pyqt5 pyside2 qcompleter

当字符串列表仅包含Unicode字符时,QLineEdit无法弹出自动完成功能。当我输入2个字母后按空格和退格键时,弹出窗口出现。对于ASCII字符串,自动完成功能可以正常工作。

我已经使用QCompleter尝试了各种方法,但是似乎没有任何效果。

class MainWindow(QMainWindow):
    def __init__(self):
        QMainWindow.__init__(self)

        self.setMinimumSize(QSize(480, 80))
        self.setWindowTitle("AutoCompleter")
        central_widget = QWidget(self)
        self.setCentralWidget(central_widget)

        glayout = QGridLayout(self)
        central_widget.setLayout(glayout)

        glayout.addWidget(QLabel("Autocompletion check", self), 0, 0)

        lineEdit = QLineEdit(self)
        strList = ['அக்காரம்', 'அக்கா', 'அக்காரை', 'அக்கினி', 'அகல்', 'அமசம்', 'அமர்', 'அமரன்' ]
        #strList = ['Python', 'Potter', 'Pebble', 'Power', 'Penpal', 'Django', 'QT']
        completer = QCompleter(strList, lineEdit)
        completer.setCompletionMode(completer.PopupCompletion)
        lineEdit.setCompleter(completer)
        glayout.addWidget(lineEdit, 0, 1)

当我使用unicode字符串时,键入前2个字母后,自动完成功能应该可以工作。 (即),而无需按Tab键或空格键+空格键

0 个答案:

没有答案