QComboBox Class

Das QComboBox-Widget kombiniert eine Schaltfläche mit einer Dropdown-Liste. Mehr...

Kopfzeile: #include <QComboBox>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbt: QWidget
Vererbt von:

QFontComboBox

Öffentliche Typen

enum InsertPolicy { NoInsert, InsertAtTop, InsertAtCurrent, InsertAtBottom, InsertAfterCurrent, …, InsertAlphabetically }
enum SizeAdjustPolicy { AdjustToContents, AdjustToContentsOnFirstShow, AdjustToMinimumContentsLengthWithIcon }

Eigenschaften

Öffentliche Funktionen

QComboBox(QWidget *parent = nullptr)
virtual ~QComboBox()
void addItem(const QString &text, const QVariant &userData = QVariant())
void addItem(const QIcon &icon, const QString &text, const QVariant &userData = QVariant())
void addItems(const QStringList &texts)
QCompleter *completer() const
int count() const
QVariant currentData(int role = Qt::UserRole) const
int currentIndex() const
QString currentText() const
bool duplicatesEnabled() const
int findData(const QVariant &data, int role = Qt::UserRole, Qt::MatchFlags flags = static_cast<Qt::MatchFlags>(Qt::MatchExactly|Qt::MatchCaseSensitive)) const
int findText(const QString &text, Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive) const
bool hasFrame() const
virtual void hidePopup()
QSize iconSize() const
void insertItem(int index, const QString &text, const QVariant &userData = QVariant())
void insertItem(int index, const QIcon &icon, const QString &text, const QVariant &userData = QVariant())
void insertItems(int index, const QStringList &list)
QComboBox::InsertPolicy insertPolicy() const
void insertSeparator(int index)
bool isEditable() const
QVariant itemData(int index, int role = Qt::UserRole) const
QAbstractItemDelegate *itemDelegate() const
QIcon itemIcon(int index) const
QString itemText(int index) const
QLineEdit *lineEdit() const
int maxCount() const
int maxVisibleItems() const
int minimumContentsLength() const
QAbstractItemModel *model() const
int modelColumn() const
QString placeholderText() const
void removeItem(int index)
QModelIndex rootModelIndex() const
void setCompleter(QCompleter *completer)
void setDuplicatesEnabled(bool enable)
void setEditable(bool editable)
void setFrame(bool)
void setIconSize(const QSize &size)
void setInsertPolicy(QComboBox::InsertPolicy policy)
void setItemData(int index, const QVariant &value, int role = Qt::UserRole)
void setItemDelegate(QAbstractItemDelegate *delegate)
void setItemIcon(int index, const QIcon &icon)
void setItemText(int index, const QString &text)
void setLineEdit(QLineEdit *edit)
void setMaxCount(int max)
void setMaxVisibleItems(int maxItems)
void setMinimumContentsLength(int characters)
virtual void setModel(QAbstractItemModel *model)
void setModelColumn(int visibleColumn)
void setPlaceholderText(const QString &placeholderText)
void setRootModelIndex(const QModelIndex &index)
void setSizeAdjustPolicy(QComboBox::SizeAdjustPolicy policy)
void setValidator(const QValidator *validator)
void setView(QAbstractItemView *itemView)
virtual void showPopup()
QComboBox::SizeAdjustPolicy sizeAdjustPolicy() const
const QValidator *validator() const
QAbstractItemView *view() const

Reimplementierte öffentliche Funktionen

virtual bool event(QEvent *event) override
virtual QVariant inputMethodQuery(Qt::InputMethodQuery query) const override
virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override

Öffentliche Slots

void clear()
void clearEditText()
void setCurrentIndex(int index)
void setCurrentText(const QString &text)
void setEditText(const QString &text)

Signale

void activated(int index)
void currentIndexChanged(int index)
void currentTextChanged(const QString &text)
void editTextChanged(const QString &text)
void highlighted(int index)
void textActivated(const QString &text)
void textHighlighted(const QString &text)

Geschützte Funktionen

virtual void initStyleOption(QStyleOptionComboBox *option) const

Reimplementierte geschützte Funktionen

virtual void changeEvent(QEvent *e) override
virtual void contextMenuEvent(QContextMenuEvent *e) override
virtual void focusInEvent(QFocusEvent *e) override
virtual void focusOutEvent(QFocusEvent *e) override
virtual void hideEvent(QHideEvent *e) override
virtual void inputMethodEvent(QInputMethodEvent *e) override
virtual void keyPressEvent(QKeyEvent *e) override
virtual void keyReleaseEvent(QKeyEvent *e) override
virtual void mousePressEvent(QMouseEvent *e) override
virtual void mouseReleaseEvent(QMouseEvent *e) override
virtual void paintEvent(QPaintEvent *e) override
virtual void resizeEvent(QResizeEvent *e) override
virtual void showEvent(QShowEvent *e) override
virtual void wheelEvent(QWheelEvent *e) override

Detaillierte Beschreibung

Zusammengeklappte QCombobox

Erweitertes QCombobox

Eigenschaften anzeigen

Eine QComboBox ist eine kompakte Möglichkeit, dem Benutzer eine Liste von Optionen zu präsentieren.

Eine Combobox ist ein Auswahl-Widget, das das aktuelle Element anzeigt und eine Liste von auswählbaren Elementen aufklappt, wenn es angeklickt wird. Comboboxen können sowohl Pixmaps als auch Strings enthalten, wenn die Funktionen insertItem() und setItemText() entsprechend überladen sind.

Bearbeitungsfunktionen

Eine Combobox kann editierbar sein, so dass der Benutzer jedes Element in der Liste ändern kann. Für editierbare Comboboxen gibt es die Funktion clearEditText(), die die angezeigte Zeichenkette löscht, ohne den Inhalt der Combobox zu verändern.

Wenn der Benutzer eine neue Zeichenkette in eine editierbare Combobox eingibt, kann das Widget diese einfügen oder nicht, und es kann sie an verschiedenen Stellen einfügen. Die Standardrichtlinie ist InsertAtBottom, aber Sie können dies mit setInsertPolicy() ändern.

Es ist möglich, die Eingabe auf eine editierbare Combobox zu beschränken, indem man QValidator verwendet; siehe setValidator(). Standardmäßig wird jede Eingabe akzeptiert.

Eine Combobox kann mit den Einfügefunktionen, z. B. insertItem() und insertItems(), gefüllt werden. Einträge können mit setItemText() geändert werden. Ein Element kann mit removeItem() und alle Elemente können mit clear() entfernt werden. Der Text des aktuellen Eintrags wird mit currentText() zurückgegeben, und der Text eines nummerierten Eintrags wird mit text() zurückgegeben. Das aktuelle Element kann mit setCurrentIndex() gesetzt werden. Die Anzahl der Elemente in der Combobox wird mit count() zurückgegeben; die maximale Anzahl der Elemente kann mit setMaxCount() eingestellt werden. Mit setEditable() können Sie die Bearbeitung zulassen. Für bearbeitbare Comboboxen können Sie mit setCompleter() die Autovervollständigung einstellen, und ob der Benutzer Duplikate hinzufügen kann oder nicht, wird mit setDuplicatesEnabled() festgelegt.

Signale

Es gibt drei Signale, die ausgegeben werden, wenn sich der aktuelle Eintrag in einer Combobox ändert: currentIndexChanged(), currentTextChanged() und activated(). currentIndexChanged Die Signale activated() und currentTextChanged() werden immer ausgegeben, unabhängig davon, ob die Änderung programmatisch oder durch Benutzerinteraktion erfolgt ist, während () nur ausgegeben wird, wenn die Änderung durch Benutzerinteraktion verursacht wurde. Das Signal highlighted() wird ausgegeben, wenn der Benutzer einen Eintrag in der Combobox-Popup-Liste markiert. Alle drei Signale existieren in zwei Versionen, eine mit einem QString Argument und eine mit einem int Argument. Wenn der Benutzer eine Pixmap auswählt oder hervorhebt, werden nur die Signale int ausgegeben. Wenn der Text einer editierbaren Combobox geändert wird, wird das Signal editTextChanged() ausgegeben.

Model/View-Framework

QComboBox verwendet das Model/View-Framework für seine Popup-Liste und zum Speichern der Elemente. Standardmäßig speichert eine QStandardItemModel die Elemente und eine QListView Unterklasse zeigt die Popup-Liste an. Sie können direkt auf das Modell und die Ansicht zugreifen (mit model() und view()), aber QComboBox bietet auch Funktionen zum Setzen und Abrufen von Elementdaten, zum Beispiel setItemData() und itemText(). Sie können auch ein neues Modell und eine neue Ansicht festlegen (mit setModel() und setView()). Für den Text und das Symbol in der Beschriftung der Combobox werden die Daten in dem Modell verwendet, das die Qt::DisplayRole und Qt::DecorationRole hat.

Hinweis: Sie können die SelectionMode der view() nicht ändern, indem Sie z. B. setSelectionMode() verwenden.

Siehe auch QLineEdit, QSpinBox, QRadioButton, und QButtonGroup.

Dokumentation der Mitgliedstypen

enum QComboBox::InsertPolicy

Diese Aufzählung gibt an, was QComboBox tun soll, wenn eine neue Zeichenkette vom Benutzer eingegeben wird.

KonstanteWertBeschreibung
QComboBox::NoInsert0Die Zeichenfolge wird nicht in die Combobox eingefügt.
QComboBox::InsertAtTop1Die Zeichenkette wird als erstes Element in die Combobox eingefügt.
QComboBox::InsertAtCurrent2Der aktuelle Eintrag wird durch die Zeichenkette ersetzt.
QComboBox::InsertAtBottom3Die Zeichenkette wird nach dem letzten Eintrag in der Combobox eingefügt.
QComboBox::InsertAfterCurrent4Die Zeichenkette wird nach dem aktuellen Eintrag in der Combobox eingefügt.
QComboBox::InsertBeforeCurrent5Die Zeichenkette wird vor dem aktuellen Eintrag in der Combobox eingefügt.
QComboBox::InsertAlphabetically6Die Zeichenkette wird in der alphabetischen Reihenfolge in die Combobox eingefügt.

enum QComboBox::SizeAdjustPolicy

Diese Aufzählung gibt an, wie der Größenhinweis von QComboBox angepasst werden soll, wenn neue Inhalte hinzugefügt werden oder sich Inhalte ändern.

KonstanteWertBeschreibung
QComboBox::AdjustToContents0Die Combobox wird sich immer an den Inhalt anpassen
QComboBox::AdjustToContentsOnFirstShow1Die Combobox wird bei der ersten Anzeige an den Inhalt angepasst.
QComboBox::AdjustToMinimumContentsLengthWithIcon2Die Combobox wird auf minimumContentsLength plus Platz für ein Icon angepasst. Verwenden Sie diese Richtlinie aus Leistungsgründen bei großen Modellen.

Eigenschaft Dokumentation

[read-only] count : const int

Diese Eigenschaft enthält die Anzahl der Elemente in der Combobox.

Bei einem leeren Kombinationsfeld hat diese Eigenschaft standardmäßig den Wert 0.

Zugriffsfunktionen:

int count() const

[read-only] currentData : const QVariant

Diese Eigenschaft enthält die Daten für das aktuelle Element

Standardmäßig enthält diese Eigenschaft für ein leeres Kombinationsfeld oder ein Kombinationsfeld, in dem kein aktuelles Element eingestellt ist, ein ungültiges QVariant.

Zugriffsfunktionen:

QVariant currentData(int role = Qt::UserRole) const

currentIndex : int

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

Der aktuelle Index kann sich beim Einfügen oder Entfernen von Elementen ändern.

Standardmäßig hat diese Eigenschaft bei einem leeren Kombinationsfeld oder einem Kombinationsfeld, in dem kein aktuelles Element gesetzt ist, den Wert -1.

Zugriffsfunktionen:

int currentIndex() const
void setCurrentIndex(int index)

Benachrichtigungssignal:

void currentIndexChanged(int index)

currentText : QString

Diese Eigenschaft enthält den aktuellen Text

Wenn das Kombinationsfeld bearbeitbar ist, ist der aktuelle Text der Wert, der durch die Zeilenbearbeitung angezeigt wird. Andernfalls ist es der Wert des aktuellen Elements oder eine leere Zeichenkette, wenn das Kombinationsfeld leer ist oder kein aktuelles Element gesetzt ist.

Der Setter setCurrentText() ruft einfach setEditText() auf, wenn das Kombinationsfeld bearbeitbar ist. Andernfalls, wenn es einen passenden Text in der Liste gibt, wird currentIndex auf den entsprechenden Index gesetzt.

Zugriffsfunktionen:

QString currentText() const
void setCurrentText(const QString &text)

Benachrichtigungssignal:

void currentTextChanged(const QString &text)

Siehe auch editable und setEditText().

duplicatesEnabled : bool

Diese Eigenschaft gibt an, ob der Benutzer doppelte Einträge in die Combobox eingeben kann.

Beachten Sie, dass es immer möglich ist, programmatisch doppelte Einträge in die Combobox einzufügen.

Standardmäßig ist diese Eigenschaft false (Duplikate sind nicht erlaubt).

Zugriffsfunktionen:

bool duplicatesEnabled() const
void setDuplicatesEnabled(bool enable)

editable : bool

Diese Eigenschaft gibt an, ob das Kombinationsfeld vom Benutzer bearbeitet werden kann.

Standardmäßig ist diese Eigenschaft false. Die Auswirkungen der Bearbeitung hängen von der Einfügepolitik ab.

Hinweis: Wenn Sie den Status editable deaktivieren, werden der Validator und die Vervollständigung entfernt.

Zugriffsfunktionen:

bool isEditable() const
void setEditable(bool editable)

Siehe auch InsertPolicy.

frame : bool

Diese Eigenschaft legt fest, ob das Kombinationsfeld mit einem Rahmen gezeichnet werden soll.

Wenn sie aktiviert ist (Standardeinstellung), zeichnet sich das Kombinationsfeld innerhalb eines Rahmens, andernfalls zeichnet es sich ohne jeden Rahmen.

Zugriffsfunktionen:

bool hasFrame() const
void setFrame(bool)

iconSize : QSize

Diese Eigenschaft bestimmt die Größe der in der Combobox angezeigten Icons.

Wird sie nicht explizit festgelegt, wird der Standardwert des aktuellen Stils zurückgegeben. Diese Größe ist die maximale Größe, die Icons haben können; Icons mit geringerer Größe werden nicht skaliert.

Zugriffsfunktionen:

QSize iconSize() const
void setIconSize(const QSize &size)

insertPolicy : InsertPolicy

Diese Eigenschaft enthält die Richtlinie, mit der festgelegt wird, wo die vom Benutzer eingefügten Elemente in der Combobox erscheinen sollen.

Der Standardwert ist InsertAtBottom, was bedeutet, dass neue Elemente am unteren Ende der Liste erscheinen.

Zugriffsfunktionen:

QComboBox::InsertPolicy insertPolicy() const
void setInsertPolicy(QComboBox::InsertPolicy policy)

Siehe auch InsertPolicy.

maxCount : int

Diese Eigenschaft gibt die maximale Anzahl der Elemente an, die in der Combobox enthalten sein dürfen.

Hinweis: Wenn Sie die maximale Anzahl auf einen Wert setzen, der kleiner ist als die aktuelle Anzahl der Elemente in der Combobox, werden die zusätzlichen Elemente abgeschnitten. Dies gilt auch, wenn Sie ein externes Modell für die Combobox festgelegt haben.

Standardmäßig wird der Wert dieser Eigenschaft von der höchsten verfügbaren Ganzzahl mit Vorzeichen abgeleitet (normalerweise 2147483647).

Zugriffsfunktionen:

int maxCount() const
void setMaxCount(int max)

maxVisibleItems : int

Diese Eigenschaft enthält die maximal zulässige Größe des Kombinationsfeldes auf dem Bildschirm, gemessen in Elementen

Standardmäßig hat diese Eigenschaft einen Wert von 10.

Hinweis: Diese Eigenschaft wird für nicht editierbare Comboboxen in Stilen ignoriert, die für QStyle::SH_ComboBox_Popup den Wert true zurückgeben, wie z.B. der Mac-Stil oder der Gtk+-Stil.

Zugriffsfunktionen:

int maxVisibleItems() const
void setMaxVisibleItems(int maxItems)

minimumContentsLength : int

Diese Eigenschaft gibt die Mindestanzahl der Zeichen an, die in die Combobox passen sollen.

Der Standardwert ist 0.

Wenn diese Eigenschaft auf einen positiven Wert gesetzt ist, wird sie von minimumSizeHint() und sizeHint() berücksichtigt.

Zugriffsfunktionen:

int minimumContentsLength() const
void setMinimumContentsLength(int characters)

Siehe auch sizeAdjustPolicy.

modelColumn : int

Diese Eigenschaft enthält die Spalte im Modell, die sichtbar ist.

Wenn sie vor dem Ausfüllen des Kombinationsfeldes festgelegt wird, bleibt die Popup-Ansicht davon unberührt und zeigt die erste Spalte an (unter Verwendung des Standardwerts dieser Eigenschaft).

Standardmäßig hat diese Eigenschaft einen Wert von 0.

Hinweis: In einer bearbeitbaren Combobox wird die sichtbare Spalte auch die completion column.

Zugriffsfunktionen:

int modelColumn() const
void setModelColumn(int visibleColumn)

placeholderText : QString

Legt einen placeholderText Text fest, der angezeigt wird, wenn kein gültiger Index eingestellt ist.

Die placeholderText wird angezeigt, wenn ein ungültiger Index eingestellt ist. Der Text ist in der Dropdown-Liste nicht zugänglich. Wenn diese Funktion vor dem Hinzufügen von Elementen aufgerufen wird, wird der Platzhaltertext angezeigt, andernfalls müssen Sie setCurrentIndex(-1) programmatisch aufrufen, wenn Sie den Platzhaltertext anzeigen möchten. Setzen Sie einen leeren Platzhaltertext, um die Einstellung zurückzusetzen.

Wenn die QComboBox editierbar ist, verwenden Sie stattdessen QLineEdit::setPlaceholderText().

Zugriffsfunktionen:

QString placeholderText() const
void setPlaceholderText(const QString &placeholderText)

sizeAdjustPolicy : SizeAdjustPolicy

Diese Eigenschaft enthält die Richtlinie, die beschreibt, wie sich die Größe der Combobox ändert, wenn sich der Inhalt ändert.

Der Standardwert ist AdjustToContentsOnFirstShow.

Zugriffsfunktionen:

QComboBox::SizeAdjustPolicy sizeAdjustPolicy() const
void setSizeAdjustPolicy(QComboBox::SizeAdjustPolicy policy)

Siehe auch SizeAdjustPolicy.

Dokumentation der Mitgliedsfunktionen

[explicit] QComboBox::QComboBox(QWidget *parent = nullptr)

Konstruiert eine Combobox mit dem angegebenen parent, wobei das Standardmodell QStandardItemModel verwendet wird.

[virtual noexcept] QComboBox::~QComboBox()

Zerstört die Combobox.

[signal] void QComboBox::activated(int index)

Dieses Signal wird gesendet, wenn der Benutzer ein Element in der Combobox auswählt. Es wird die index des Eintrags übergeben. Beachten Sie, dass dieses Signal auch gesendet wird, wenn die Auswahl nicht geändert wird. Wenn Sie wissen müssen, wann sich die Auswahl tatsächlich ändert, verwenden Sie das Signal currentIndexChanged() oder currentTextChanged().

void QComboBox::addItem(const QString &text, const QVariant &userData = QVariant())

Fügt der Combobox mit der angegebenen text einen Eintrag hinzu, der die angegebene userData (gespeichert in Qt::UserRole) enthält. Der Eintrag wird an die Liste der vorhandenen Einträge angehängt.

void QComboBox::addItem(const QIcon &icon, const QString &text, const QVariant &userData = QVariant())

Fügt der Combobox ein Element mit den angegebenen icon und text hinzu, das das angegebene userData enthält (gespeichert in Qt::UserRole). Der Eintrag wird an die Liste der vorhandenen Einträge angehängt.

void QComboBox::addItems(const QStringList &texts)

Fügt jede der Zeichenketten in der angegebenen texts in die Combobox ein. Jeder Eintrag wird der Reihe nach an die Liste der vorhandenen Einträge angehängt.

[override virtual protected] void QComboBox::changeEvent(QEvent *e)

Reimplements: QWidget::changeEvent(QEvent *Event).

[slot] void QComboBox::clear()

Löscht die Combobox und entfernt alle Einträge.

Hinweis: Wenn Sie ein externes Modell für die Combobox festgelegt haben, wird dieses Modell auch beim Aufruf dieser Funktion gelöscht.

[slot] void QComboBox::clearEditText()

Löscht den Inhalt der Bearbeitungszeile, die für die Bearbeitung in der Combobox verwendet wird.

QCompleter *QComboBox::completer() const

Gibt die Vervollständigung zurück, die für die automatische Vervollständigung der Texteingabe in der Combobox verwendet wird.

Siehe auch setCompleter() und editable.

[override virtual protected] void QComboBox::contextMenuEvent(QContextMenuEvent *e)

Reimplements: QWidget::contextMenuEvent(QContextMenuEvent *event).

[signal] void QComboBox::currentIndexChanged(int index)

Dieses Signal wird immer dann gesendet, wenn sich die currentIndex in der Combobox entweder durch Benutzerinteraktion oder programmatisch ändert. Übergeben wird der Wert index oder -1, wenn die Combobox leer ist oder currentIndex zurückgesetzt wurde.

Hinweis: Benachrichtigungssignal für die Eigenschaft currentIndex.

[signal] void QComboBox::currentTextChanged(const QString &text)

Dieses Signal wird ausgegeben, wenn sich currentText ändert. Der neue Wert wird als text übergeben.

Hinweis: Es wird nicht ausgegeben, wenn currentText gleich bleibt, auch wenn sich currentIndex ändert.

Hinweis: Benachrichtigungssignal für die Eigenschaft currentText.

[signal] void QComboBox::editTextChanged(const QString &text)

Dieses Signal wird ausgegeben, wenn der Text im Zeileneditier-Widget der Combobox geändert wird. Der neue Text wird durch text angegeben.

[override virtual] bool QComboBox::event(QEvent *event)

Reimplements: QWidget::event(QEvent *Event).

int QComboBox::findData(const QVariant &data, int role = Qt::UserRole, Qt::MatchFlags flags = static_cast<Qt::MatchFlags>(Qt::MatchExactly|Qt::MatchCaseSensitive)) const

Gibt den Index des Elements zurück, das das angegebene data für das angegebene role enthält; andernfalls wird -1 zurückgegeben.

Die flags geben an, wie die Elemente in der Combobox durchsucht werden.

int QComboBox::findText(const QString &text, Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive) const

Gibt den Index des Elements zurück, das den angegebenen text enthält; andernfalls wird -1 zurückgegeben.

Die flags geben an, wie die Elemente in der Combobox durchsucht werden.

[override virtual protected] void QComboBox::focusInEvent(QFocusEvent *e)

Reimplements: QWidget::focusInEvent(QFocusEvent *event).

[override virtual protected] void QComboBox::focusOutEvent(QFocusEvent *e)

Reimplements: QWidget::focusOutEvent(QFocusEvent *event).

[override virtual protected] void QComboBox::hideEvent(QHideEvent *e)

Reimplements: QWidget::hideEvent(QHideEvent *event).

[virtual] void QComboBox::hidePopup()

Blendet die Liste der Elemente in der Combobox aus, wenn sie gerade sichtbar ist, und setzt den internen Status zurück. Wenn also das benutzerdefinierte Popup in der neu implementierten Funktion showPopup() angezeigt wurde, müssen Sie auch die Funktion hidePopup() neu implementieren, um Ihr benutzerdefiniertes Popup auszublenden, und die Implementierung der Basisklasse aufrufen, um den internen Status zurückzusetzen, wenn Ihr benutzerdefiniertes Popup-Widget ausgeblendet wird.

Siehe auch showPopup().

[signal] void QComboBox::highlighted(int index)

Dieses Signal wird gesendet, wenn ein Element in der Combobox-Popup-Liste vom Benutzer hervorgehoben wird. Es wird die Adresse index des Eintrags übergeben.

[virtual protected] void QComboBox::initStyleOption(QStyleOptionComboBox *option) const

Initialisieren Sie option mit den Werten aus dieser QComboBox. Diese Methode ist nützlich für Unterklassen, wenn sie eine QStyleOptionComboBox benötigen, aber nicht alle Informationen selbst eingeben wollen.

Siehe auch QStyleOption::initFrom().

[override virtual protected] void QComboBox::inputMethodEvent(QInputMethodEvent *e)

Reimplements: QWidget::inputMethodEvent(QInputMethodEvent *event).

[override virtual] QVariant QComboBox::inputMethodQuery(Qt::InputMethodQuery query) const

Reimplements: QWidget::inputMethodQuery(Qt::InputMethodQuery query) const.

void QComboBox::insertItem(int index, const QString &text, const QVariant &userData = QVariant())

Fügt die text und userData (gespeichert in Qt::UserRole) in die Combobox an der angegebenen index ein.

Wenn der Index gleich oder höher ist als die Gesamtzahl der Einträge, wird der neue Eintrag an die Liste der vorhandenen Einträge angehängt. Ist der Index Null oder negativ, wird der neue Eintrag der Liste der vorhandenen Einträge vorangestellt.

Siehe auch insertItems().

void QComboBox::insertItem(int index, const QIcon &icon, const QString &text, const QVariant &userData = QVariant())

Fügt die Elemente icon, text und userData (gespeichert in Qt::UserRole) in die Combobox an der angegebenen Stelle index ein.

Wenn der Index gleich oder höher ist als die Gesamtzahl der Einträge, wird der neue Eintrag an die Liste der vorhandenen Einträge angehängt. Ist der Index Null oder negativ, wird der neue Eintrag der Liste der vorhandenen Einträge vorangestellt.

Siehe auch insertItems().

void QComboBox::insertItems(int index, const QStringList &list)

Fügt die Zeichenketten aus list als separate Elemente in die Combobox ein, beginnend mit dem angegebenen index.

Ist der Index gleich oder größer als die Gesamtzahl der Einträge, werden die neuen Einträge an die Liste der vorhandenen Einträge angehängt. Ist der Index Null oder negativ, werden die neuen Einträge der Liste der vorhandenen Einträge vorangestellt.

Siehe auch insertItem().

void QComboBox::insertSeparator(int index)

Fügt ein Trennelement in die Combobox an der angegebenen Position index ein.

Ist der Index gleich oder größer als die Gesamtzahl der Elemente, wird das neue Element an die Liste der vorhandenen Elemente angehängt. Ist der Index Null oder negativ, wird der neue Eintrag der Liste der vorhandenen Einträge vorangestellt.

Siehe auch insertItem().

QVariant QComboBox::itemData(int index, int role = Qt::UserRole) const

Gibt die Daten für die angegebene role in der angegebenen index in der Combobox zurück, oder eine ungültige QVariant, wenn es keine Daten für diese Rolle gibt.

Siehe auch setItemData().

QAbstractItemDelegate *QComboBox::itemDelegate() const

Gibt den von der Popup-Listenansicht verwendeten Elementdelegaten zurück.

Siehe auch setItemDelegate().

QIcon QComboBox::itemIcon(int index) const

Gibt das Symbol für das angegebene index in der Combobox zurück.

Siehe auch setItemIcon().

QString QComboBox::itemText(int index) const

Gibt den Text für das angegebene index in der Combobox zurück.

Siehe auch setItemText().

[override virtual protected] void QComboBox::keyPressEvent(QKeyEvent *e)

Reimplements: QWidget::keyPressEvent(QKeyEvent *event).

[override virtual protected] void QComboBox::keyReleaseEvent(QKeyEvent *e)

Reimplements: QWidget::keyReleaseEvent(QKeyEvent *event).

QLineEdit *QComboBox::lineEdit() const

Gibt die Zeilenbearbeitung zurück, die zum Bearbeiten von Elementen in der Combobox verwendet wird, oder nullptr, wenn es keine Zeilenbearbeitung gibt.

Nur editierbare Comboboxen haben eine Zeilenbearbeitung.

Siehe auch setLineEdit().

[override virtual] QSize QComboBox::minimumSizeHint() const

Reimplantiert eine Zugriffsfunktion für die Eigenschaft: QWidget::minimumSizeHint.

QAbstractItemModel *QComboBox::model() const

Gibt das von der Combobox verwendete Modell zurück.

Siehe auch setModel().

[override virtual protected] void QComboBox::mousePressEvent(QMouseEvent *e)

Reimplements: QWidget::mousePressEvent(QMouseEvent *event).

[override virtual protected] void QComboBox::mouseReleaseEvent(QMouseEvent *e)

Reimplements: QWidget::mouseReleaseEvent(QMouseEvent *event).

[override virtual protected] void QComboBox::paintEvent(QPaintEvent *e)

Reimplements: QWidget::paintEvent(QPaintEvent *event).

void QComboBox::removeItem(int index)

Entfernt den Eintrag unter der angegebenen Adresse index aus der Combobox. Dabei wird der aktuelle Index aktualisiert, wenn der Index entfernt wird.

Diese Funktion ist wirkungslos, wenn index außerhalb des Bereichs liegt.

[override virtual protected] void QComboBox::resizeEvent(QResizeEvent *e)

Reimplements: QWidget::resizeEvent(QResizeEvent *event).

QModelIndex QComboBox::rootModelIndex() const

Gibt den Index des Stammmodells für die Elemente in der Combobox zurück.

Siehe auch setRootModelIndex().

void QComboBox::setCompleter(QCompleter *completer)

Legt fest, dass completer anstelle des aktuellen Vervollständigers verwendet wird. Wenn completer nullptr ist, ist die automatische Vervollständigung deaktiviert.

Standardmäßig wird für ein bearbeitbares Kombinationsfeld automatisch eine QCompleter erstellt, die eine Inline-Vervollständigung ohne Berücksichtigung der Groß-/Kleinschreibung durchführt.

Hinweis: Die Vervollständigung wird entfernt, wenn die Eigenschaft editable zu false wird, oder wenn die Zeilenbearbeitung durch einen Aufruf von setLineEdit() ersetzt wird. Das Setzen einer Vervollständigung für eine QComboBox, die nicht editierbar ist, wird ignoriert.

Siehe auch completer().

[slot] void QComboBox::setEditText(const QString &text)

Setzt die text in der Textbearbeitung der Combobox.

void QComboBox::setItemData(int index, const QVariant &value, int role = Qt::UserRole)

Setzt die Daten role für den Eintrag auf dem angegebenen index in der Combobox auf den angegebenen value.

Siehe auch itemData().

void QComboBox::setItemDelegate(QAbstractItemDelegate *delegate)

Legt das Element delegate für die Popup-Listenansicht fest. Die Combobox wird Eigentümer des Delegaten.

Ein eventuell vorhandener Delegat wird entfernt, aber nicht gelöscht. QComboBox übernimmt nicht das Eigentum an delegate.

Warnung: Sie sollten nicht die gleiche Instanz eines Delegaten zwischen Comboboxen, Widget Mappern oder Ansichten teilen. Dies kann zu falschem oder unintuitivem Editierverhalten führen, da jeder View, der mit einem bestimmten Delegaten verbunden ist, das Signal closeEditor() empfangen kann und versucht, auf einen bereits geschlossenen Editor zuzugreifen, ihn zu ändern oder zu schließen.

Siehe auch itemDelegate().

void QComboBox::setItemIcon(int index, const QIcon &icon)

Setzt die icon für den Eintrag auf der angegebenen index in der Combobox.

Siehe auch itemIcon().

void QComboBox::setItemText(int index, const QString &text)

Setzt die text für den Eintrag auf der angegebenen index in der Combobox.

Siehe auch itemText().

void QComboBox::setLineEdit(QLineEdit *edit)

Legt die Zeile edit fest, die anstelle des aktuellen Zeilenbearbeitungs-Widgets verwendet werden soll.

Die Combobox übernimmt den Besitz der Zeilenbearbeitung.

Hinweis: Da das Zeileneditier-Widget der Combobox Eigentümer von QCompleter ist, hat jeder vorherige Aufruf von setCompleter() keine Wirkung mehr.

Siehe auch lineEdit().

[virtual] void QComboBox::setModel(QAbstractItemModel *model)

Setzt das Modell auf model. model darf nicht nullptr sein. Wenn Sie den Inhalt eines Modells löschen wollen, rufen Sie clear() auf.

Hinweis: Wenn die Combobox bearbeitbar ist, wird model auch auf den Abschließer der Zeilenbearbeitung gesetzt.

Siehe auch model(), clear(), und setCompleter().

void QComboBox::setRootModelIndex(const QModelIndex &index)

Legt das Root Model Item index für die Items in der Combobox fest.

Siehe auch rootModelIndex().

void QComboBox::setValidator(const QValidator *validator)

Legt den validator fest, der anstelle des aktuellen Validators verwendet werden soll.

Hinweis: Der Validator wird entfernt, wenn die Eigenschaft editable zu false wird.

Siehe auch validator().

void QComboBox::setView(QAbstractItemView *itemView)

Setzt die im Popup der Combobox zu verwendende Ansicht auf die angegebene itemView. Die Combobox übernimmt den Besitz der Ansicht.

Hinweis: Wenn Sie die Komfortansichten (wie QListWidget, QTableWidget oder QTreeWidget) verwenden wollen, müssen Sie vor dem Aufruf dieser Funktion setModel() für die Combobox mit dem Modell der Komfortwidgets aufrufen.

Siehe auch view().

[override virtual protected] void QComboBox::showEvent(QShowEvent *e)

Reimplements: QWidget::showEvent(QShowEvent *event).

[virtual] void QComboBox::showPopup()

Zeigt die Liste der Elemente in der Combobox an. Wenn die Liste leer ist, werden keine Elemente angezeigt.

Wenn Sie diese Funktion neu implementieren, um ein benutzerdefiniertes Pop-up anzuzeigen, stellen Sie sicher, dass Sie hidePopup() aufrufen, um den internen Status zurückzusetzen.

Siehe auch hidePopup().

[override virtual] QSize QComboBox::sizeHint() const

Reimplementiert eine Zugriffsfunktion für die Eigenschaft: QWidget::sizeHint.

Diese Implementierung speichert den Größenhinweis, um eine Größenänderung zu vermeiden, wenn sich der Inhalt dynamisch ändert. Um den zwischengespeicherten Wert ungültig zu machen, ändern Sie die sizeAdjustPolicy.

[signal] void QComboBox::textActivated(const QString &text)

Dieses Signal wird gesendet, wenn der Benutzer ein Element in der Combobox auswählt. Es wird die text des Elements übergeben. Beachten Sie, dass dieses Signal auch gesendet wird, wenn die Auswahl nicht geändert wird. Wenn Sie wissen müssen, wann sich die Auswahl tatsächlich ändert, verwenden Sie das Signal currentIndexChanged() oder currentTextChanged().

[signal] void QComboBox::textHighlighted(const QString &text)

Dieses Signal wird gesendet, wenn ein Element in der Combobox-Popup-Liste vom Benutzer hervorgehoben wird. Es wird die Adresse text des Eintrags übergeben.

const QValidator *QComboBox::validator() const

Gibt den Validator zurück, der zur Einschränkung der Texteingabe für die Combobox verwendet wird.

Siehe auch setValidator() und editable.

QAbstractItemView *QComboBox::view() const

Gibt die Listenansicht zurück, die für das Popup der Combobox verwendet wird.

Siehe auch setView().

[override virtual protected] void QComboBox::wheelEvent(QWheelEvent *e)

Reimplements: QWidget::wheelEvent(QWheelEvent *event).

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