0
QLineEditの特定の文字数の後にのみ予測を開始するQCompleterが必要です。私はQLineEditとQCompleterからシンプルなクラスを書いていますが、この機能を追加する方法はわかりません。pyqt - QLineEditで一定数の文字の後にQCompleterを有効にします。
class Completer(QtWidgets.QCompleter):
def __init__(self, parent=None):
super(Completer, self).__init__(parent)
self.setCaseSensitivity(Qt.CaseInsensitive)
self.setCompletionMode(QtWidgets.QCompleter.PopupCompletion)
self.setFilterMode(Qt.MatchStartsWith)
class LineEditCompleter(QtWidgets.QLineEdit):
def __init__(self, parent=None):
super(LineEditCompleter, self).__init__(parent)
self.completer = Completer(self)
self.setCompleter(self.completer)
は、私は、テキストの長さが3未満の場合setCompleter(None)
にQLineEdit
からtextChanged
をオーバーライドして、私が使用している場合コンプリータが削除されたようだ、それは動作しませんが、3以上の場合はそれを再度アクティブにしようとしましたsetCompleter(None)
。
これを達成する可能性はありますか?
ありがとうございました。
そのブログ記事はOPの質問には全く答えません。実際にコードを試しましたか? – ekhumoro
@Achayan、私はこのブログで私が探していたものが見つかりませんでした。 – SyedElec