Auf dieser Seite

QCompleter Class

Die Klasse „QCompleter“ stellt Vervollständigungsvorschläge auf der Grundlage eines Elementmodells bereit. Mehr...

Header: #include <QCompleter>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Erbt von: QObject

Öffentliche Typen

enum CompletionMode { PopupCompletion, InlineCompletion, UnfilteredPopupCompletion }
enum ModelSorting { UnsortedModel, CaseSensitivelySortedModel, CaseInsensitivelySortedModel }

Eigenschaften

Öffentliche Funktionen

QCompleter(QObject *parent = nullptr)
QCompleter(QAbstractItemModel *model, QObject *parent = nullptr)
QCompleter(const QStringList &list, QObject *parent = nullptr)
virtual ~QCompleter() override
Qt::CaseSensitivity caseSensitivity() const
int completionColumn() const
int completionCount() const
QCompleter::CompletionMode completionMode() const
QAbstractItemModel *completionModel() const
QString completionPrefix() const
int completionRole() const
QString currentCompletion() const
QModelIndex currentIndex() const
int currentRow() const
Qt::MatchFlags filterMode() const
int maxVisibleItems() const
QAbstractItemModel *model() const
QCompleter::ModelSorting modelSorting() const
virtual QString pathFromIndex(const QModelIndex &index) const
QAbstractItemView *popup() const
void setCaseSensitivity(Qt::CaseSensitivity caseSensitivity)
void setCompletionColumn(int column)
void setCompletionMode(QCompleter::CompletionMode mode)
void setCompletionRole(int role)
bool setCurrentRow(int row)
void setFilterMode(Qt::MatchFlags filterMode)
void setMaxVisibleItems(int maxItems)
void setModel(QAbstractItemModel *model)
void setModelSorting(QCompleter::ModelSorting sorting)
void setPopup(QAbstractItemView *popup)
void setWidget(QWidget *widget)
virtual QStringList splitPath(const QString &path) const
QWidget *widget() const
bool wrapAround() const

Öffentliche Slots

void complete(const QRect &rect = QRect())
void setCompletionPrefix(const QString &prefix)
void setWrapAround(bool wrap)

Signale

void activated(const QModelIndex &index)
void activated(const QString &text)
void highlighted(const QModelIndex &index)
void highlighted(const QString &text)

Neu implementierte geschützte Funktionen

virtual bool event(QEvent *ev) override
virtual bool eventFilter(QObject *o, QEvent *e) override

Ausführliche Beschreibung

Sie können QCompleter verwenden, um in jedem Qt Widget, wie beispielsweise QLineEdit und QComboBox, eine Autovervollständigung bereitzustellen. Sobald der Benutzer mit der Eingabe eines Wortes beginnt, schlägt QCompleter auf der Grundlage einer Wortliste mögliche Vervollständigungen vor. Die Wortliste wird als „ QAbstractItemModel “ bereitgestellt. (Bei einfachen Anwendungen, bei denen die Wortliste statisch ist, können Sie dem Konstruktor von QCompleter ein „ QStringList “ übergeben.)

Grundlegende Verwendung

Ein `QCompleter` wird typischerweise mit einem ` QLineEdit ` oder einem ` QComboBox` verwendet. Hier ist beispielsweise gezeigt, wie man in einem ` QLineEdit` automatische Vervollständigungen aus einer einfachen Wortliste bereitstellt:

QStringList wordList;
wordList << "alpha" << "omega" << "omicron" << "zeta";

QLineEdit *lineEdit = new QLineEdit(this);

QCompleter *completer = new QCompleter(wordList, this);
completer->setCaseSensitivity(Qt::CaseInsensitive);
lineEdit->setCompleter(completer);

Ein „ QFileSystemModel “ kann verwendet werden, um eine automatische Vervollständigung von Dateinamen bereitzustellen. Zum Beispiel:

QCompleter *completer = new QCompleter(this);
completer->setModel(new QFileSystemModel(completer));
lineEdit->setCompleter(completer);

Um das Modell festzulegen, auf dessen Grundlage QCompleter arbeiten soll, rufen Sie ` setModel()` auf. Standardmäßig versucht QCompleter, den „ completion prefix “ (d. h. das Wort, mit dessen Eingabe der Benutzer begonnen hat) mit den in Spalte 0 des Modells gespeicherten „ Qt::EditRole “-Daten unter Berücksichtigung der Groß-/Kleinschreibung abzugleichen. Dies kann mithilfe von ` setCompletionRole()`, ` setCompletionColumn()` und ` setCaseSensitivity()` geändert werden.

Wenn das Modell nach der Spalte und der Rolle sortiert ist, die für die Vervollständigung verwendet werden, können Sie ` setModelSorting()` entweder mit ` QCompleter::CaseSensitivelySortedModel ` oder ` QCompleter::CaseInsensitivelySortedModel ` als Argument aufrufen. Bei großen Modellen kann dies zu erheblichen Leistungssteigerungen führen, da QCompleter dann anstelle einer linearen Suche eine binäre Suche verwenden kann. Die binäre Suche funktioniert nur, wenn ` filterMode ` gleich ` Qt::MatchStartsWith` ist.

Das Modell kann ein „ list model “, ein „ table model “ oder ein „ tree model “ sein. Die Vervollständigung bei Baummodellen ist etwas aufwendiger und wird im folgenden Abschnitt „ Handling Tree Models “ behandelt.

Die Methode ` completionMode()` legt den Modus fest, in dem dem Benutzer Vervollständigungsvorschläge angezeigt werden.

Durchlaufen der Vervollständigungsvorschläge

Um eine einzelne Kandidatenzeichenfolge abzurufen, rufen Sie ` setCompletionPrefix()` mit dem zu vervollständigenden Text auf und rufen Sie anschließend ` currentCompletion()` auf. Sie können wie folgt durch die Liste der Vervollständigungsvorschläge iterieren:

for (int i = 0; completer->setCurrentRow(i); i++)
    qDebug() << completer->currentCompletion() << " is match number " << i;

completionCount() gibt die Gesamtzahl der Vervollständigungen für das aktuelle Präfix zurück. Die Verwendung von ` completionCount()` sollte nach Möglichkeit vermieden werden, da hierfür das gesamte Modell durchsucht werden muss.

Das Vervollständigungsmodell

completionModel() gibt ein Listenmodell zurück, das alle möglichen Vervollständigungen für das aktuelle Vervollständigungspräfix in der Reihenfolge enthält, in der sie im Modell vorkommen. Dieses Modell kann verwendet werden, um die aktuellen Vervollständigungen in einer benutzerdefinierten Ansicht anzuzeigen. Der Aufruf von setCompletionPrefix() aktualisiert das Vervollständigungsmodell automatisch.

Umgang mit Baummodellen

QCompleter kann in Baummodellen nach Vervollständigungen suchen, vorausgesetzt, dass jedes Element (oder Unterelement oder Unter-Unterelement) durch Angabe des Pfads zu diesem Element eindeutig als Zeichenkette dargestellt werden kann. Die Vervollständigung erfolgt dann Ebene für Ebene.

Nehmen wir das Beispiel eines Benutzers, der einen Dateisystempfad eingibt. Das Modell ist ein (hierarchisches) ` QFileSystemModel`. Die Vervollständigung erfolgt für jedes Element im Pfad. Wenn der aktuelle Text beispielsweise ` C:\Wind` lautet, könnte QCompleter ` Windows ` vorschlagen, um das aktuelle Pfadelement zu vervollständigen. Ähnlich könnte QCompleter bei einem aktuellen Text von ` C:\Windows\Sy` den Vorschlag ` System` machen.

Damit diese Art der Vervollständigung funktioniert, muss QCompleter in der Lage sein, den Pfad in eine Liste von Zeichenketten aufzuteilen, die auf jeder Ebene abgeglichen werden. Bei „ C:\Windows\Sy “ muss er in „C:“, „Windows“ und „Sy“ aufgeteilt werden. Die Standardimplementierung von „ splitPath()“ teilt „ completionPrefix “ mithilfe von „ QDir::separator()“ auf, wenn das Modell ein „ QFileSystemModel “ ist.

Um Vervollständigungen anbieten zu können, muss QCompleter den Pfad aus einem Index kennen. Dieser wird von pathFromIndex() bereitgestellt. Die Standardimplementierung von pathFromIndex() gibt bei Listenmodellen die Daten für die edit role zurück und den absoluten Dateipfad, wenn es sich um ein QFileSystemModel handelt.

Siehe auch „ QAbstractItemModel“ , „ QLineEdit “, „ QComboBox “ und das „Completer“-Beispiel.

Dokumentation zum Mitgliedstyp

enum QCompleter::CompletionMode

Diese Enumeration legt fest, wie dem Benutzer Vervollständigungsvorschläge angezeigt werden.

KonstanteWertBeschreibung
QCompleter::PopupCompletion0Aktuelle Vervollständigungsvorschläge werden in einem Popup-Fenster angezeigt.
QCompleter::InlineCompletion2Vervollständigungsvorschläge werden inline (als markierter Text) angezeigt.
QCompleter::UnfilteredPopupCompletion1Alle möglichen Vervollständigungen werden in einem Popup-Fenster angezeigt, wobei der wahrscheinlichste Vorschlag als aktuell markiert ist.

Siehe auch „ setCompletionMode“ ().

enum QCompleter::ModelSorting

Diese Enumeration legt fest, wie die Elemente im Modell sortiert werden.

KonstanteWertBeschreibung
QCompleter::UnsortedModel0Das Modell ist unsortiert.
QCompleter::CaseSensitivelySortedModel1Das Modell wird unter Berücksichtigung der Groß-/Kleinschreibung sortiert.
QCompleter::CaseInsensitivelySortedModel2Das Modell wird ohne Berücksichtigung der Groß-/Kleinschreibung sortiert.

Siehe auch ` setModelSorting()`.

Dokumentation zur Eigenschaft

caseSensitivity : Qt::CaseSensitivity

Diese Eigenschaft legt fest, ob bei der Suche die Groß-/Kleinschreibung berücksichtigt wird

Der Standardwert lautet „ Qt::CaseSensitive “.

Zugriffsfunktionen:

Qt::CaseSensitivity caseSensitivity() const
void setCaseSensitivity(Qt::CaseSensitivity caseSensitivity)

Siehe auch „ completionColumn“ , „ completionRole “, „ modelSorting “ und „ filterMode “.

completionColumn : int

Diese Eigenschaft gibt die Spalte im Modell an, in der nach Vervollständigungen gesucht wird.

Wenn die „ popup()“-Funktion ein „ QListView “ ist, wird die Anzeige dieser Spalte automatisch eingerichtet.

Standardmäßig ist die Übereinstimmungsspalte 0.

Zugriffsfunktionen:

int completionColumn() const
void setCompletionColumn(int column)

Siehe auch „ completionRole “ und „ caseSensitivity “.

completionMode : CompletionMode

Wie die Vervollständigungsvorschläge dem Benutzer angezeigt werden

Der Standardwert lautet „ QCompleter::PopupCompletion “.

Zugriffsfunktionen:

QCompleter::CompletionMode completionMode() const
void setCompletionMode(QCompleter::CompletionMode mode)

completionPrefix : QString

Diese Eigenschaft enthält das Vervollständigungspräfix, das zur Bereitstellung von Vervollständigungsvorschlägen verwendet wird.

Die Eigenschaft „ completionModel()“ wird aktualisiert, um die Liste der möglichen Übereinstimmungen für „ prefix “ widerzuspiegeln.

Zugriffsfunktionen:

QString completionPrefix() const
void setCompletionPrefix(const QString &prefix)

completionRole : int

Diese Eigenschaft enthält die Elementrolle, die zur Abfrage der Inhalte von Elementen auf Übereinstimmungen verwendet wird.

Die Standardrolle lautet „ Qt::EditRole “.

Zugriffsfunktionen:

int completionRole() const
void setCompletionRole(int role)

Siehe auch „ completionColumn “ und „ caseSensitivity “.

filterMode : Qt::MatchFlags

Diese Eigenschaft steuert, wie die Filterung durchgeführt wird.

Wenn „filterMode“ auf „ Qt::MatchStartsWith “ gesetzt ist, werden nur die Einträge angezeigt, die mit den eingegebenen Zeichen beginnen. Bei „ Qt::MatchContains “ werden die Einträge angezeigt, die die eingegebenen Zeichen enthalten, und bei „ Qt::MatchEndsWith “ diejenigen, die mit den eingegebenen Zeichen enden.

Wird „filterMode“ auf einen anderen Wert als „ Qt::MatchFlag “ gesetzt, wird eine Warnung ausgegeben, und es wird keine Aktion ausgeführt. Aus diesem Grund hat das Flag „ Qt::MatchCaseSensitive “ keine Auswirkung. Verwenden Sie die Eigenschaft „ caseSensitivity “, um die Groß-/Kleinschreibung zu steuern.

Der Standardmodus ist „ Qt::MatchStartsWith “.

Zugriffsfunktionen:

Qt::MatchFlags filterMode() const
void setFilterMode(Qt::MatchFlags filterMode)

Siehe auch „ caseSensitivity “.

maxVisibleItems : int

Diese Eigenschaft gibt die maximal zulässige Größe des Komplettierfelds auf dem Bildschirm an, gemessen in Elementen

Standardmäßig hat diese Eigenschaft den Wert 7.

Zugriffsfunktionen:

int maxVisibleItems() const
void setMaxVisibleItems(int maxItems)

modelSorting : ModelSorting

Diese Eigenschaft legt fest, wie das Modell sortiert wird

Standardmäßig werden keine Annahmen über die Reihenfolge der Elemente im Modell getroffen, das die Vervollständigungen bereitstellt.

Wenn die Modelldaten für „ completionColumn()“ und „ completionRole()“ in aufsteigender Reihenfolge sortiert sind, können Sie diese Eigenschaft auf „ CaseSensitivelySortedModel “ oder „ CaseInsensitivelySortedModel “ setzen. Bei großen Modellen kann dies zu erheblichen Leistungssteigerungen führen, da das „Completer“-Objekt dann einen binären Suchalgorithmus anstelle eines linearen Suchalgorithmus verwenden kann.

Die Sortierreihenfolge (d. h. aufsteigende oder absteigende Reihenfolge) des Modells wird dynamisch durch Überprüfung des Modellinhalts ermittelt.

Hinweis: Die oben beschriebenen Leistungsverbesserungen können nicht erzielt werden, wenn sich die Groß-/Kleinschreibung des „ caseSensitivity “ des „Completer“ von der Groß-/Kleinschreibung unterscheidet, die das Modell beim Sortieren verwendet.

Zugriffsfunktionen:

QCompleter::ModelSorting modelSorting() const
void setModelSorting(QCompleter::ModelSorting sorting)

Siehe auch ` setCaseSensitivity()` und ` QCompleter::ModelSorting`.

wrapAround : bool

Diese Eigenschaft legt fest, ob die Vervollständigungsvorschläge beim Durchblättern der Elemente von vorne beginnen

Der Standardwert ist „true“.

Zugriffsfunktionen:

bool wrapAround() const
void setWrapAround(bool wrap)

Dokumentation zu den Member-Funktionen

QCompleter::QCompleter(QObject *parent = nullptr)

Erstellt ein „Completer“-Objekt mit der angegebenen „ parent “.

QCompleter::QCompleter(QAbstractItemModel *model, QObject *parent = nullptr)

Erstellt ein „Completer“-Objekt mit dem angegebenen „ parent “, das Vervollständigungsvorschläge aus dem angegebenen „ model “ bereitstellt.

QCompleter::QCompleter(const QStringList &list, QObject *parent = nullptr)

Erstellt ein QCompleter-Objekt mit dem angegebenen „ parent “, das die angegebene „ list “ als Quelle für mögliche Vervollständigungen verwendet.

[override virtual noexcept] QCompleter::~QCompleter()

Löscht das „completer“-Objekt.

[signal] void QCompleter::activated(const QModelIndex &index)

Dieses Signal wird gesendet, wenn ein Element im „ popup “ () vom Benutzer aktiviert wird (durch Klicken oder Drücken der Eingabetaste). Dabei wird die „ index “ des Elements im „ completionModel “ () übermittelt.

Hinweis: Dieses Signal ist überladen. Um eine Verbindung zu diesem Signal herzustellen:

// Connect using qOverload:
connect(completer, qOverload(&QCompleter::activated),
        receiver, &ReceiverClass::slot);

// Or using a lambda:
connect(completer, qOverload(&QCompleter::activated),
        this, [](const QModelIndex &index) { /* handle activated */ });
Weitere Beispiele und Vorgehensweisen finden Sie unter „An überladene Signale anbinden“.

[signal] void QCompleter::activated(const QString &text)

Dieses Signal wird ausgelöst, wenn ein Element im „ popup()“ vom Benutzer aktiviert wird (durch Klicken oder Drücken der Eingabetaste). Die ID des Elements („ text “) wird übergeben.

Hinweis: Dieses Signal ist überladen. So verbinden Sie sich mit diesem Signal:

// Connect using qOverload:
connect(completer, qOverload(&QCompleter::activated),
        receiver, &ReceiverClass::slot);

// Or using a lambda:
connect(completer, qOverload(&QCompleter::activated),
        this, [](const QString &text) { /* handle activated */ });
Weitere Beispiele und Vorgehensweisen finden Sie unter „An überladene Signale anbinden“.

[slot] void QCompleter::complete(const QRect &rect = QRect())

In den Modi „ QCompleter::PopupCompletion “ und „QCompletion::UnfilteredPopupCompletion“ wird durch den Aufruf dieser Funktion das Popup-Fenster mit den aktuellen Vervollständigungsvorschlägen angezeigt. Standardmäßig wird das Popup-Fenster am unteren Rand des Rechtecks „ widget()“ angezeigt, sofern „ rect “ nicht angegeben ist. Ist „ rect “ angegeben, wird das Popup-Fenster am linken Rand des Rechtecks angezeigt.

Im Modus „ QCompleter::InlineCompletion “ wird das Signal „ highlighted “ () mit der aktuellen Vervollständigung ausgelöst.

int QCompleter::completionCount() const

Gibt die Anzahl der Vervollständigungsvorschläge für das aktuelle Präfix zurück. Bei einem unsortierten Modell mit einer großen Anzahl von Elementen kann dies rechenintensiv sein. Verwenden Sie „ setCurrentRow()“ und „ currentCompletion()“, um alle Vervollständigungsvorschläge durchzugehen.

QAbstractItemModel *QCompleter::completionModel() const

Gibt das Vervollständigungsmodell zurück. Das Vervollständigungsmodell ist ein schreibgeschütztes Listenmodell, das alle möglichen Übereinstimmungen für das aktuelle Vervollständigungspräfix enthält. Das Vervollständigungsmodell wird automatisch aktualisiert, um die aktuellen Vervollständigungen widerzuspiegeln.

Hinweis: Der Rückgabewert dieser Funktion ist rein aus Gründen der Allgemeingültigkeit als „ QAbstractItemModel “ definiert. Tatsächlich handelt es sich bei dem zurückgegebenen Modell um eine Instanz einer Unterklasse von „ QAbstractProxyModel “.

Siehe auch ` completionPrefix ` und ` model()`.

QString QCompleter::currentCompletion() const

Gibt die aktuelle Vervollständigungszeichenfolge zurück. Diese enthält den „ completionPrefix “. In Verbindung mit „ setCurrentRow()“ kann damit eine Iteration über alle Übereinstimmungen durchgeführt werden.

Siehe auch „ setCurrentRow()“ und „ currentIndex()“.

QModelIndex QCompleter::currentIndex() const

Gibt den Modellindex der aktuellen Vervollständigung in der Funktion „ completionModel()“ zurück.

Siehe auch setCurrentRow(), currentCompletion() und model().

int QCompleter::currentRow() const

Gibt die aktuelle Zeile zurück.

Siehe auch „ setCurrentRow()“.

[override virtual protected] bool QCompleter::event(QEvent *ev)

Implementiert: ` QObject::event(QEvent *e)`.

[override virtual protected] bool QCompleter::eventFilter(QObject *o, QEvent *e)

Implementiert neu: ` QObject::eventFilter` (`QObject *watched, QEvent *event`).

[signal] void QCompleter::highlighted(const QModelIndex &index)

Dieses Signal wird ausgelöst, wenn ein Element in der ` popup()` vom Benutzer markiert wird. Es wird außerdem ausgelöst, wenn ` complete()` aufgerufen wird und dabei ` completionMode()` auf ` QCompleter::InlineCompletion` gesetzt ist. Die ` index ` des Elements in der ` completionModel()` wird übergeben.

Hinweis: Dieses Signal ist überladen. So stellen Sie eine Verbindung zu diesem Signal her:

// Connect using qOverload:
connect(completer, qOverload(&QCompleter::highlighted),
        receiver, &ReceiverClass::slot);

// Or using a lambda:
connect(completer, qOverload(&QCompleter::highlighted),
        this, [](const QModelIndex &index) { /* handle highlighted */ });
Weitere Beispiele und Vorgehensweisen finden Sie unter „Anschließen an überladene Signale“.

[signal] void QCompleter::highlighted(const QString &text)

Dieses Signal wird ausgelöst, wenn ein Element in der ` popup()` vom Benutzer markiert wird. Es wird außerdem ausgelöst, wenn ` complete()` aufgerufen wird und dabei ` completionMode()` auf ` QCompleter::InlineCompletion` gesetzt ist. Die ` text ` des Elements wird übergeben.

Hinweis: Dieses Signal ist überladen. So stellen Sie eine Verbindung zu diesem Signal her:

// Connect using qOverload:
connect(completer, qOverload(&QCompleter::highlighted),
        receiver, &ReceiverClass::slot);

// Or using a lambda:
connect(completer, qOverload(&QCompleter::highlighted),
        this, [](const QString &text) { /* handle highlighted */ });
Weitere Beispiele und Vorgehensweisen finden Sie unter „An überladene Signale anbinden“.

QAbstractItemModel *QCompleter::model() const

Gibt das Modell zurück, das Vervollständigungszeichenfolgen bereitstellt.

Siehe auch setModel() und completionModel().

[virtual] QString QCompleter::pathFromIndex(const QModelIndex &index) const

Gibt den Pfad für das angegebene Element „ index “ zurück. Das Completer-Objekt verwendet diesen, um den Vervollständigungstext aus dem zugrunde liegenden Modell abzurufen.

Die Standardimplementierung gibt bei Listenmodellen den „ edit role “ des Elements zurück. Handelt es sich bei dem Modell um ein „ QFileSystemModel “, wird der absolute Dateipfad zurückgegeben.

Siehe auch ` splitPath()`.

Gibt das Popup zurück, das zur Anzeige von Vervollständigungsvorschlägen verwendet wird.

Siehe auch „ setPopup()“.

bool QCompleter::setCurrentRow(int row)

Setzt die aktuelle Zeile auf den angegebenen Wert „ row “. Gibt bei Erfolg „ true “ zurück; andernfalls wird „ false “ zurückgegeben.

Diese Funktion kann zusammen mit ` currentCompletion()` verwendet werden, um alle möglichen Vervollständigungen durchzugehen.

Siehe auch „ currentRow()“, „ currentCompletion()“ und „ completionCount()“.

void QCompleter::setModel(QAbstractItemModel *model)

Legt das Modell fest, das Vervollständigungsvorschläge für „ model “ bereitstellt. Die „ model “ kann ein Listenmodell oder ein Baummodell sein. Wenn bereits zuvor ein Modell festgelegt wurde und dieses „ QCompleter “ als übergeordnetes Element hat, wird es gelöscht.

Der Einfachheit halber ändert „ QCompleter “, sofern „ model “ ein „ QFileSystemModel “ ist, dessen „ caseSensitivity “ unter Windows auf „ Qt::CaseInsensitive “ und auf anderen Plattformen auf „ Qt::CaseSensitive “.

Siehe auch completionModel(), modelSorting und Handling Tree Models.

void QCompleter::setPopup(QAbstractItemView *popup)

Legt das Popup zur Anzeige von Vervollständigungsvorschlägen auf „ popup “ fest. „ QCompleter “ übernimmt die Verantwortung für die Ansicht.

Ein „ QListView “ wird automatisch erstellt, wenn „ completionMode()“ auf „ QCompleter::PopupCompletion “ oder „ QCompleter::UnfilteredPopupCompletion “ gesetzt wird. Das Standard-Popup zeigt „ completionColumn()“ an.

Stellen Sie sicher, dass diese Funktion aufgerufen wird, bevor die Ansichtseinstellungen geändert werden. Dies ist erforderlich, da die Eigenschaften der Ansicht möglicherweise voraussetzen, dass der Ansicht ein Modell zugewiesen wurde (beispielsweise erfordert das Ausblenden von Spalten in der Ansicht, dass der Ansicht ein Modell zugewiesen wurde).

Siehe auch popup().

void QCompleter::setWidget(QWidget *widget)

Setzt das Widget, für das Vervollständigungen bereitgestellt werden, auf „ widget “. Diese Funktion wird automatisch aufgerufen, wenn ein „ QCompleter “ über „ QLineEdit::setCompleter()“ auf einem „ QLineEdit “ oder über „ QComboBox::setCompleter()“ auf einem „ QComboBox “ festgelegt wird. Bei der Bereitstellung von Vervollständigungen für benutzerdefinierte Widgets muss das Widget explizit festgelegt werden.

Siehe auch widget(), setModel() und setPopup().

[virtual] QStringList QCompleter::splitPath(const QString &path) const

Teilt den angegebenen „ path “ in Zeichenfolgen auf, die für den Abgleich auf jeder Ebene in der Funktion „ model()“ verwendet werden.

Die Standardimplementierung von splitPath() teilt einen Dateisystempfad auf der Grundlage von ` QDir::separator()` auf, wenn `sourceModel()` ein ` QFileSystemModel` ist.

Bei Verwendung mit Listenmodellen wird das erste Element der zurückgegebenen Liste für den Abgleich verwendet.

Siehe auch ` pathFromIndex()` und ` Handling Tree Models`.

QWidget *QCompleter::widget() const

Gibt das Widget zurück, für das das Completer-Objekt Vervollständigungsvorschläge bereitstellt.

Siehe auch „ setWidget()“.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.