Auf dieser Seite

ComboBox QML Type

Kombination aus Schaltfläche und Popup-Liste zur Auswahl von Optionen. Mehr...

Import Statement: import QtQuick.Controls
Inherits:

Control

Eigenschaften

Signale

Methoden

Ausführliche Beschreibung

ComboBox ist eine Kombination aus Schaltfläche und Popup-Liste. Sie bietet die Möglichkeit, dem Benutzer eine Liste von Optionen so darzustellen, dass dabei möglichst wenig Platz auf dem Bildschirm beansprucht wird.

Die ComboBox wird mit einem Datenmodell gefüllt. Das Datenmodell ist in der Regel ein JavaScript-Array, ein „ ListModel “ oder eine Ganzzahl, es werden jedoch auch andere Arten von Datenmodellen unterstützt.

ComboBox {
    model: ["First", "Second", "Third"]
}

Bearbeitbare ComboBox

Die ComboBox kann als „ editable “ (bearbeitbar) eingerichtet werden. Eine bearbeitbare ComboBox vervollständigt ihren Text automatisch auf der Grundlage der im Modell verfügbaren Einträge.

Das folgende Beispiel zeigt, wie Inhalte an eine bearbeitbare ComboBox angehängt werden, indem auf das Signal „ accepted “ reagiert wird.

ComboBox {
    editable: true
    model: ListModel {
        id: model
        ListElement { text: "Banana" }
        ListElement { text: "Apple" }
        ListElement { text: "Coconut" }
    }
    onAccepted: {
        if (find(editText) === -1)
            model.append({text: editText})
    }
}

Popup der ComboBox

Standardmäßig wird das Popup der ComboBox durch einen Klick außerhalb des Popups geschlossen, und das Ereignis wird an Elemente weitergegeben, die in der Stapelreihenfolge darunter liegen. Um zu verhindern, dass das Popup geschlossen wird, setzen Sie die Eigenschaft „ closePolicy “ wie folgt:

    popup.closePolicy: Popup.CloseOnEscape

Um die Weiterleitung des Ereignisses zu verhindern, setzen Sie die Eigenschaft „ modal “ auf „ true “:

    popup.modal: true

Modellrollen der ComboBox

Die ComboBox kann Standarddatenmodelle visualisieren, die die Rolle „ modelData “ bereitstellen:

  • Modelle, die nur eine Rolle haben
  • Modelle, die keine benannten Rollen haben (JavaScript-Array, Ganzzahl)

Bei der Verwendung von Modellen mit mehreren benannten Rollen muss die ComboBox so konfiguriert werden, dass sie für ihre Instanzen „ display text “ und „ delegate “ eine bestimmte „ text role “ verwendet. Wenn Sie eine Rolle des Modellelements verwenden möchten, die der Rolle „text“ entspricht, setzen Sie „ valueRole “. Die Eigenschaft „ currentValue “ und die Methode „ indexOfValue()“ können dann verwendet werden, um Informationen über diese Werte abzurufen.

Beispiel:

ApplicationWindow {
    width: 640
    height: 480
    visible: true

    // Used as an example of a backend - this would usually be
    // e.g. a C++ type exposed to QML.
    QtObject {
        id: backend
        property int modifier
    }

    ComboBox {
        model: [
            { value: Qt.NoModifier, text: qsTr("No modifier") },
            { value: Qt.ShiftModifier, text: qsTr("Shift") },
            { value: Qt.ControlModifier, text: qsTr("Control") }
        ]
        textRole: "text"
        valueRole: "value"
        // Set currentValue to the value stored in the backend.
        currentValue: backend.modifier
        // When an item is selected, update the backend.
        onActivated: backend.modifier = currentValue
    }
}

Hinweis: Wenn der ComboBox ein Datenmodell zugewiesen ist, das mehrere benannte Rollen enthält, „ textRole “ jedoch nicht definiert ist, kann die ComboBox diese nicht visualisieren und löst eine „ ReferenceError: modelData is not defined “ aus.

Siehe auch „Anpassen von ComboBox, Eingabesteuerelementen und Fokusverwaltung“ unter Qt Quick Controls.

Dokumentation zu den Eigenschaften

acceptableInput : bool [read-only, since QtQuick.Controls 2.2 (Qt 5.9)]

Diese Eigenschaft gibt an, ob die Kombinationsfeldliste zulässigen Text im bearbeitbaren Textfeld enthält.

Wenn ein Validator festgelegt wurde, lautet der Wert nur dann „ true “, wenn der aktuelle Text für den Validator als endgültige Zeichenkette (nicht als Zwischenzeichenkette) zulässig ist.

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

Siehe auch „ validator “ und „ accepted “.

count : int [read-only]

Diese Eigenschaft enthält die Anzahl der Einträge im Kombinationsfeld.

currentIndex : int

Diese Eigenschaft enthält den Index des aktuellen Elements in der Kombinationsfeldliste.

Der Standardwert lautet „ -1 “, wenn „ count “ auf „ 0 “ gesetzt ist, andernfalls lautet er „ 0 “.

Siehe auch „ activated()“, „ currentText “ und „ highlightedIndex “.

currentText : string [read-only]

Diese Eigenschaft enthält den Text des aktuellen Eintrags in der Kombinationsfeld.

Siehe auch currentIndex, displayText, textRole und editText.

currentValue : var [since QtQuick.Controls 2.14 (Qt 5.14)]

Diese Eigenschaft enthält den Wert des aktuellen Elements in der Kombinationsfeld. Durch das Setzen dieser Eigenschaft wird „ currentIndex “ auf das Element mit dem entsprechenden Wert gesetzt oder auf „ -1 “, falls dieses nicht gefunden wird. Das deklarative Setzen sowohl von „ currentIndex “ als auch von „ currentValue “ führt zu undefiniertem Verhalten. Das Setzen dieser Eigenschaft mit einem Wert, der nicht eindeutig ist, wird nicht unterstützt.

Ein Beispiel für die Verwendung dieser Eigenschaft finden Sie unter ComboBox Model Roles.

Diese Eigenschaft wurde in QtQuick.Controls 2.14 (Qt 5.14) eingeführt.

Siehe auch currentIndex, currentText und valueRole.

delegate : Component

Diese Eigenschaft enthält einen Delegaten, der ein Element im Popup-Fenster der Kombinationsfelds anzeigt.

Es wird empfohlen, ` ItemDelegate ` (oder ein anderes Derivat von ` AbstractButton `) als Delegat zu verwenden. Dadurch wird sichergestellt, dass die Interaktion wie erwartet funktioniert und das Popup bei Bedarf automatisch geschlossen wird. Werden andere Typen als Delegat verwendet, muss das Popup manuell geschlossen werden. Beispielsweise bei Verwendung von ` MouseArea `:

delegate: Rectangle {
    // ...
    MouseArea {
        // ...
        onClicked: comboBox.popup.close()
    }
}

Seit Qt 6.11 übernimmt „ ComboBox “ nicht mehr die Eigentümerschaft des Delegaten.

Siehe auch „ ItemDelegate “ und „Anpassen der ComboBox“.

delegateModel : model [read-only]

Diese Eigenschaft enthält das Modell, das Delegat-Instanzen für das Kombinationsfeld bereitstellt.

Sie wird in der Regel im „ contentItem “ des „ popup “ einem „ ListView “ zugewiesen.

Siehe auch „Anpassen der ComboBox“.

displayText : string

Diese Eigenschaft enthält den Text, der auf der Schaltfläche des Kombinationsfelds angezeigt wird.

Standardmäßig gibt der Anzeigetext die aktuelle Auswahl wieder. Das heißt, er entspricht dem Text des aktuellen Elements. Der Standard-Anzeigetext kann jedoch durch einen benutzerdefinierten Wert überschrieben werden.

ComboBox {
    currentIndex: 1
    displayText: "Size: " + currentText
    model: ["S", "M", "L"]
}

Siehe auch currentText und textRole.

down : bool [since QtQuick.Controls 2.2 (Qt 5.9)]

Diese Eigenschaft gibt an, ob die Schaltfläche des Kombinationsfelds optisch gedrückt ist.

Sofern nicht explizit festgelegt, ist diese Eigenschaft auf „ true “ gesetzt, wenn entweder „ pressed “ oder „ popup.visible “ auf „ true “ gesetzt ist. Um zum Standardwert zurückzukehren, setzen Sie diese Eigenschaft auf „ undefined “.

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

Siehe auch pressed und popup.

editText : string [since QtQuick.Controls 2.2 (Qt 5.9)]

Diese Eigenschaft enthält den Text im Textfeld einer bearbeitbaren Kombinationsfeldes.

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

Siehe auch editable, currentText und displayText.

editable : bool [since QtQuick.Controls 2.2 (Qt 5.9)]

Diese Eigenschaft gibt an, ob das Kombinationsfeld bearbeitbar ist.

Der Standardwert ist „ false “.

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

Siehe auch „ validator “.

flat : bool [since QtQuick.Controls 2.1 (Qt 5.8)]

Diese Eigenschaft legt fest, ob die Schaltfläche der Kombinationsfeld-Box flach dargestellt wird.

Eine flache Kombinationsfeld-Schaltfläche zeichnet keinen Hintergrund, solange keine Interaktion mit ihr stattfindet. Im Vergleich zu normalen Kombinationsfeldern sorgen flache Kombinationsfelder für ein Erscheinungsbild, durch das sie sich weniger vom Rest der Benutzeroberfläche abheben. Wenn Sie beispielsweise eine Kombinationsfeld in eine Symbolleiste einfügen, kann es wünschenswert sein, das Kombinationsfeld flach zu gestalten, damit es besser zum flachen Erscheinungsbild der Symbolschaltflächen passt.

Der Standardwert ist „ false “.

Diese Eigenschaft wurde in QtQuick.Controls 2.1 (Qt 5.8) eingeführt.

highlightOnHover : bool [since QtQuick.Controls 6.12 (Qt 6.12)]

Diese Eigenschaft legt fest, ob Elemente beim Bewegen des Mauszeigers darüber hervorgehoben werden sollen.

Der Standardwert ist „ true “.

Diese Eigenschaft wurde in QtQuick.Controls 6.12 (Qt 6.12) eingeführt.

highlightedIndex : int [read-only]

Diese Eigenschaft enthält den Index des markierten Elements in der Popup-Liste der Kombinationsfelds.

Wenn ein markiertes Element aktiviert wird, wird das Popup-Fenster geschlossen, „ currentIndex “ wird auf „ highlightedIndex “ gesetzt und der Wert dieser Eigenschaft wird auf „ -1 “ zurückgesetzt, da kein markiertes Element mehr vorhanden ist.

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

implicitContentWidthPolicy : enumeration [since QtQuick.Controls 6.0 (Qt 6.0)]

Diese Eigenschaft steuert, wie das „ implicitContentWidth “ des „ ComboBox “ berechnet wird.

Wenn die Breite eines „ ComboBox “ nicht ausreicht, um Text anzuzeigen, wird dieser Text gekürzt. Je nachdem, welche Teile des Textes gekürzt werden, kann dies die Auswahl eines Elements für den Endbenutzer erschweren. Eine effiziente Methode, um sicherzustellen, dass ein „ ComboBox “ breit genug ist, damit kein Text gekürzt wird, besteht darin, eine Breite festzulegen, von der bekannt ist, dass sie groß genug ist:

width: 300
implicitContentWidthPolicy: ComboBox.ContentItemImplicitWidth

Oft lässt sich jedoch nicht vorhersagen, ob ein fest programmierter Wert groß genug sein wird, da die Textgröße von vielen Faktoren abhängt, wie z. B. Schriftart, Schriftgröße, Übersetzungen und so weiter.

„implicitContentWidthPolicy“ bietet eine einfache Möglichkeit, die Berechnung von „implicitContentWidth“ zu steuern, was sich wiederum auf die „ implicitWidth “ des „ ComboBox “ auswirkt und sicherstellt, dass kein Text abgeschnitten wird.

Die verfügbaren Werte sind:

ConstantBeschreibung
ContentItemImplicitWidthDie „implicitContentWidth“ wird standardmäßig auf den Wert des „ contentItem “ gesetzt. Dies ist die effizienteste Option, da kein zusätzliches Textlayout erforderlich ist.
WidestTextDie „implicitContentWidth“ wird bei jeder Änderung des Modells auf die implizite Breite des größten Texts für die jeweilige „ textRole “ gesetzt. Diese Option sollte bei kleineren Modellen verwendet werden, da sie rechenintensiv sein kann.
WidestTextWhenCompletedDie „implicitContentWidth“ wird einmalig nach dem Aufruf von „ component completion “ auf die implizite Breite des größten Textes für den angegebenen „ textRole “ gesetzt. Diese Option sollte bei kleineren Modellen verwendet werden, da sie rechenintensiv sein kann.

Der Standardwert ist „ ContentItemImplicitWidth “.

Da diese Eigenschaft nur das „ implicitWidth “ des „ ComboBox “ betrifft, kann die Festlegung eines expliziten „ width “ dennoch zu einer Auslassung führen.

Hinweis: Fürdiese Funktion muss das `contentItem` ein von ` TextInput` abgeleiteter Typ sein.

Hinweis: Diese Funktion erfordert ein Layout des Textes und kann daher bei großen Modellen oder Modellen, deren Inhalt häufig aktualisiert wird, rechenintensiv sein.

Diese Eigenschaft wurde in QtQuick.Controls 6.0 (Qt 6.0) eingeführt.

implicitIndicatorHeight : real [read-only, since QtQuick.Controls 2.5 (Qt 5.12)]

Diese Eigenschaft enthält den impliziten Höhenindikator.

Der Wert entspricht indicator ? indicator.implicitHeight : 0.

Sie wird typischerweise zusammen mit „ implicitContentHeight “ und „ implicitBackgroundHeight “ verwendet, um die „ implicitHeight “ zu berechnen.

Diese Eigenschaft wurde in QtQuick.Controls 2.5 (Qt 5.12) eingeführt.

Siehe auch implicitIndicatorWidth.

implicitIndicatorWidth : real [read-only, since QtQuick.Controls 2.5 (Qt 5.12)]

Diese Eigenschaft enthält die implizite Indikatorbreite.

Der Wert entspricht „ indicator ? indicator.implicitWidth : 0 “.

Sie wird in der Regel zusammen mit „ implicitContentWidth “ und „ implicitBackgroundWidth “ verwendet, um die „ implicitWidth “ zu berechnen.

Diese Eigenschaft wurde in QtQuick.Controls 2.5 (Qt 5.12) eingeführt.

Siehe auch implicitIndicatorHeight.

indicator : Item

Diese Eigenschaft enthält das Dropdown-Anzeigeelement.

Siehe auch „Anpassung der ComboBox“.

inputMethodComposing : bool [read-only, since QtQuick.Controls 2.2 (Qt 5.9)]

Diese Eigenschaft gibt an, ob in einem bearbeitbaren Kombinationsfeld eine teilweise Texteingabe über eine Eingabemethode vorliegt.

Während der Textzusammenstellung kann eine Eingabemethode auf Maus- oder Tastenereignisse der Kombinationsliste zurückgreifen, um den Teiltext zu bearbeiten oder zu übernehmen. Diese Eigenschaft kann verwendet werden, um zu bestimmen, wann Ereignisbehandler deaktiviert werden sollen, die den korrekten Betrieb einer Eingabemethode beeinträchtigen könnten.

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

inputMethodHints : flags [since QtQuick.Controls 2.2 (Qt 5.9)]

Gibt der Eingabemethode Hinweise zum erwarteten Inhalt der Kombinationsfeld und zu dessen Funktionsweise.

Der Standardwert ist „ Qt.ImhNoPredictiveText “.

Der Wert ist eine bitweise Kombination von Flags oder „ Qt.ImhNone “, wenn keine Hinweise festgelegt sind.

Flagge, die das Verhalten ändern, sind:

  • Qt.ImhHiddenText – Zeichen sollten ausgeblendet werden, wie es typischerweise bei der Eingabe von Passwörtern der Fall ist.
  • Qt.ImhSensitiveData – Der eingegebene Text sollte von der aktiven Eingabemethode nicht in einem dauerhaften Speicher wie dem prädiktiven Benutzerwörterbuch gespeichert werden.
  • Qt.ImhNoAutoUppercase – Die Eingabemethode sollte nicht versuchen, am Satzende automatisch auf Großbuchstaben umzuschalten.
  • Qt.ImhPreferNumbers – Zahlen werden bevorzugt (sind aber nicht erforderlich).
  • Qt.ImhPreferUppercase – Großbuchstaben werden bevorzugt (sind jedoch nicht erforderlich).
  • Qt.ImhPreferLowercase – Kleinbuchstaben werden bevorzugt (sind aber nicht erforderlich).
  • Qt.ImhNoPredictiveText – Während der Eingabe soll keine Texterkennung (d. h. keine Wörterbuchsuche) verwendet werden.
  • Qt.ImhDate – Der Texteditor fungiert als Datumsfeld.
  • Qt.ImhTime – Der Texteditor fungiert als Zeitfeld.

Flags, die die Eingabe einschränken (exklusive Flags), sind:

  • Qt.ImhDigitsOnly – Es sind nur Ziffern zulässig.
  • Qt.ImhFormattedNumbersOnly – Es ist nur die Eingabe von Zahlen erlaubt. Dazu gehören Dezimalpunkt und Minuszeichen.
  • Qt.ImhUppercaseOnly – Es dürfen nur Großbuchstaben eingegeben werden.
  • Qt.ImhLowercaseOnly – Es dürfen nur Kleinbuchstaben eingegeben werden.
  • Qt.ImhDialableCharactersOnly – Es sind nur Zeichen erlaubt, die für die Telefonwahl geeignet sind.
  • Qt.ImhEmailCharactersOnly – Es sind nur Zeichen zulässig, die für E-Mail-Adressen geeignet sind.
  • Qt.ImhUrlCharactersOnly – Es sind nur Zeichen erlaubt, die für URLs geeignet sind.

Masken:

  • Qt.ImhExclusiveInputMask – Diese Maske liefert einen Wert ungleich Null, wenn eines der Ausschlussflags verwendet wird.

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

model : model

Diese Eigenschaft enthält das Modell, das die Daten für das Kombinationsfeld bereitstellt.

ComboBox {
    textRole: "key"
    model: ListModel {
        ListElement { key: "First"; value: 123 }
        ListElement { key: "Second"; value: 456 }
        ListElement { key: "Third"; value: 789 }
    }
}

Siehe auch „ textRole “ und „Datenmodelle“.

Diese Eigenschaft enthält das Popup-Fenster.

Das Popup-Fenster kann bei Bedarf manuell geöffnet oder geschlossen werden:

onSpecialEvent: comboBox.popup.close()

Siehe auch „Anpassen der ComboBox“.

pressed : bool [read-only]

Diese Eigenschaft gibt an, ob die Schaltfläche der Kombinationsfelds physisch gedrückt ist. Eine Schaltfläche kann entweder durch Berührungs- oder Tastenereignisse gedrückt werden.

Siehe auch „ down “.

selectTextByMouse : bool [since QtQuick.Controls 2.15 (Qt 5.15)]

Diese Eigenschaft legt fest, ob das Textfeld eines bearbeitbaren „ ComboBox “ mit der Maus ausgewählt werden kann.

Der Standardwert ist „ false “.

Diese Eigenschaft wurde in QtQuick.Controls 2.15 (Qt 5.15) eingeführt.

textRole : string

Diese Eigenschaft enthält die Modellrolle, die zum Befüllen des Kombinationsfelds verwendet wird.

Wenn das Modell mehrere Rollen hat, kann „ textRole “ festgelegt werden, um zu bestimmen, welche Rolle angezeigt werden soll.

Siehe auch „ model“ , „ currentText “, „ displayText “ und „ ComboBox Model Roles “.

validator : Validator [since QtQuick.Controls 2.2 (Qt 5.9)]

Diese Eigenschaft enthält einen Validator für die Texteingabe in einem bearbeitbaren Kombinationsfeld.

Wenn ein Validator festgelegt ist, akzeptiert das Textfeld nur Eingaben, die die Texteigenschaft in einem Zwischenzustand belassen. Das Signal „ accepted “ wird nur ausgelöst, wenn sich der Text in einem zulässigen Zustand befindet, wenn die Taste „ Return “ oder „ Enter “ gedrückt wird.

Die derzeit unterstützten Validatoren sind „ IntValidator “, „ DoubleValidator “ und „ RegularExpressionValidator “. Nachfolgend wird ein Beispiel für die Verwendung von Validatoren gezeigt, das die Eingabe von Ganzzahlen zwischen 0 und 10 in das Textfeld ermöglicht:

ComboBox {
    model: 10
    editable: true
    validator: IntValidator {
        top: 9
        bottom: 0
    }
}

Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

Siehe auch acceptableInput, accepted und editable.

valueRole : string [since QtQuick.Controls 2.14 (Qt 5.14)]

Diese Eigenschaft enthält die Modellrolle, die zum Speichern des Werts verwendet wird, der jedem Element im Modell zugeordnet ist.

Ein Beispiel für die Verwendung dieser Eigenschaft finden Sie unter ComboBox Model Roles.

Diese Eigenschaft wurde in QtQuick.Controls 2.14 (Qt 5.14) eingeführt.

Siehe auch model und currentValue.

Signal-Dokumentation

[since QtQuick.Controls 2.2 (Qt 5.9)] void accepted()

Dieses Signal wird ausgelöst, wenn in einem editable -Kombinationsfeld die Taste „ Return “ oder „ Enter “ gedrückt wird.

Sie können dieses Signal verarbeiten, um den neu eingegebenen Eintrag dem Modell hinzuzufügen, zum Beispiel:

ComboBox {
    editable: true
    model: ListModel {
        id: model
        ListElement { text: "Banana" }
        ListElement { text: "Apple" }
        ListElement { text: "Coconut" }
    }
    onAccepted: {
        if (find(editText) === -1)
            model.append({text: editText})
    }
}

Bevor das Signal ausgelöst wird, wird geprüft, ob die Zeichenkette im Modell vorhanden ist. Ist dies der Fall, wird „ currentIndex “ auf ihren Index und „ currentText “ auf die Zeichenkette selbst gesetzt.

Nachdem das Signal ausgelöst wurde und falls die erste Überprüfung fehlgeschlagen ist (d. h., der Eintrag existierte nicht), wird erneut überprüft, ob der Eintrag durch den Signal-Handler hinzugefügt wurde. Ist dies der Fall, werden „ currentIndex “ und „ currentText “ entsprechend aktualisiert. Andernfalls werden sie auf „ -1 “ bzw. „ "" “ gesetzt.

Hinweis: Wenn für das Kombinationsfeld ein validator festgelegt ist, wird das Signal nur ausgelöst, wenn sich die Eingabe in einem zulässigen Zustand befindet.

Hinweis: Der entsprechende Handler ist ` onAccepted`.

Dieses Signal wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

void activated(int index)

Dieses Signal wird ausgelöst, wenn das Element unter index vom Benutzer aktiviert wird.

Ein Element wird aktiviert, wenn es ausgewählt wird, während das Popup geöffnet ist, wodurch das Popup geschlossen wird (und sich „ currentIndex “ ändert), oder wenn das Popup geschlossen ist und die Combobox über die Tastatur navigiert wird, wodurch sich „ currentIndex “ ändert. Die Eigenschaft „ currentIndex “ wird auf „ index “ gesetzt.

Hinweis: Der entsprechende Handler ist „ onActivated “.

Siehe auch „ currentIndex “.

void highlighted(int index)

Dieses Signal wird ausgelöst, wenn der Eintrag unter index in der Popup-Liste vom Benutzer markiert wird.

Das Signal „highlighted“ wird nur ausgelöst, wenn das Popup geöffnet ist und ein Eintrag markiert wird, jedoch nicht unbedingt „ activated “.

Hinweis: Der entsprechende Handler ist „ onHighlighted “.

Siehe auch „ highlightedIndex “.

Methodendokumentation

void decrementCurrentIndex()

Verringert den aktuellen Index der Kombinationsfelds oder den markierten Index, falls die Popup-Liste sichtbar ist.

Siehe auch currentIndex und highlightedIndex.

int find(string text, enumeration flags)

Gibt den Index des angegebenen text zurück oder -1, wenn keine Übereinstimmung gefunden wird.

Die Art und Weise, wie die Suche durchgeführt wird, wird durch den angegebenen Übereinstimmungs flags definiert. Standardmäßig führt die Kombinationsfeld-Suche eine exakte Übereinstimmung unter Berücksichtigung der Groß-/Kleinschreibung durch (Qt.MatchExactly). Alle anderen Übereinstimmungstypen sind groß-/kleinschreibungsunabhängig, es sei denn, das Flag „ Qt.MatchCaseSensitive “ ist ebenfalls angegeben.

KonstanteBeschreibung
Qt.MatchExactlyDer Suchbegriff muss exakt übereinstimmen (Standard).
Qt.MatchRegularExpressionDer Suchbegriff wird als regulärer Ausdruck abgeglichen.
Qt.MatchWildcardDer Suchbegriff wird unter Verwendung von Platzhaltern abgeglichen.
Qt.MatchFixedStringDer Suchbegriff wird als feste Zeichenfolge abgeglichen.
Qt.MatchStartsWithDer Suchbegriff stimmt mit dem Anfang des Eintrags überein.
Qt.MatchEndsWithDer Suchbegriff stimmt mit dem Ende des Eintrags überein.
Qt.MatchContainsDer Suchbegriff ist im Element enthalten.
Qt.MatchCaseSensitiveBei der Suche wird die Groß-/Kleinschreibung beachtet.

Hinweis: Diese Funktion kann erst verwendet werden, nachdem für die „ ComboBox “ die Funktion „ Component.completed()“ aufgerufen wurde.

Beispiel:

ComboBox {
    model: ListModel {
        ListElement { text: "Banana" }
        ListElement { text: "Apple" }
        ListElement { text: "Coconut" }
    }
    Component.onCompleted: currentIndex = find("Coconut")
}

Siehe auch ` textRole`.

void incrementCurrentIndex()

Erhöht den aktuellen Index der Kombinationsfelds oder den markierten Index, wenn die Popup-Liste sichtbar ist.

Siehe auch currentIndex und highlightedIndex.

[since QtQuick.Controls 2.14 (Qt 5.14)] int indexOfValue(object value)

Gibt den Index des angegebenen „ value “ zurück oder „ -1 “, falls keine Übereinstimmung gefunden wird.

Ein Beispiel für die Verwendung dieser Methode finden Sie unter ComboBox Model Roles.

Hinweis: Diese Funktion kann erst verwendet werden, nachdem Component.completed() für den ComboBox aufgerufen wurde.

Diese Methode wurde in QtQuick.Controls 2.14 (Qt 5.14) eingeführt.

Siehe auch find(), currentValue, currentIndex, valueRole und valueAt.

[since QtQuick.Controls 2.2 (Qt 5.9)] void selectAll()

Wählt den gesamten Text im bearbeitbaren Textfeld der Kombinationsfeld aus.

Diese Methode wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.

Siehe auch editText.

string textAt(int index)

Gibt den Text für den angegebenen ` index` zurück oder eine leere Zeichenkette, wenn der Index außerhalb des zulässigen Bereichs liegt.

Hinweis: Diese Funktion kann erst verwendet werden, nachdem „ Component.completed()“ für den „ ComboBox “ ausgegeben wurde.

Beispiel:

ComboBox {
    model: ListModel {
        ListElement { text: "Banana" }
        ListElement { text: "Apple" }
        ListElement { text: "Coconut" }
    }
    onActivated: (index) => { print(textAt(index)) }
}

Siehe auch ` textRole`.

[since QtQuick.Controls 2.14 (Qt 5.14)] var valueAt(int index)

Gibt den Wert an der Position „ index “ in der Kombinationsfeld zurück.

Diese Methode wurde in QtQuick.Controls 2.14 (Qt 5.14) eingeführt.

Siehe auch ` indexOfValue`.

© 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.