Auf dieser Seite

QInputMethod Class

Die Klasse „QInputMethod“ ermöglicht den Zugriff auf die aktive Texteingabemethode. Mehr...

Header: #include <QInputMethod>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Erbt von: QObject

Öffentliche Typen

enum Action { Click, ContextMenu }

Eigenschaften

Öffentliche Funktionen

QRectF anchorRectangle() const
QRectF cursorRectangle() const
Qt::LayoutDirection inputDirection() const
QRectF inputItemClipRectangle() const
QRectF inputItemRectangle() const
QTransform inputItemTransform() const
bool isAnimating() const
bool isVisible() const
QRectF keyboardRectangle() const
QLocale locale() const
void setInputItemRectangle(const QRectF &rect)
void setInputItemTransform(const QTransform &transform)
void setVisible(bool visible)

Öffentliche Slots

void commit()
void hide()
void invokeAction(QInputMethod::Action a, int cursorPosition)
void reset()
void show()
void update(Qt::InputMethodQueries queries)

Signale

Statische öffentliche Mitglieder

QVariant queryFocusObject(Qt::InputMethodQuery query, const QVariant &argument)

Ausführliche Beschreibung

QInputMethod wird von Texteditoren zur Integration in die Texteingabemethoden der Plattform verwendet und häufiger noch von Anwendungsansichten zum Abfragen verschiedener Informationen im Zusammenhang mit Texteingabemethoden, wie z. B. die Sichtbarkeit der virtuellen Tastatur und die Abmessungen der Tastatur.

Qt Quick Bietet außerdem Zugriff auf QInputMethod in QML über ` Qt global object ` als Eigenschaft ` Qt.inputMethod `.

Dokumentation zum Mitgliedstyp

enum QInputMethod::Action

Gibt die Art der vom Benutzer ausgeführten Aktion an.

KonstanteWertBeschreibung
QInputMethod::Click0Ein normaler Klick/Tipp
QInputMethod::ContextMenu1Ein Klick/Tippen auf das Kontextmenü (z. B. rechte Maustaste oder Tippen und Halten)

Siehe auch „ invokeAction()“.

Dokumentation zur Eigenschaft

[read-only] anchorRectangle : QRectF

Gibt das Ankerrechteck des Eingabeelements in Fensterkoordinaten an.

Das Ankerrechteck wird häufig von verschiedenen Textbearbeitungselementen wie Popups zur Textvorhersage verwendet, um der Textauswahl zu folgen.

Zugriffsfunktionen:

QRectF anchorRectangle() const

Notifier-Signal:

void anchorRectangleChanged()

[read-only] animating : bool

Wahr, wenn die virtuelle Tastatur geöffnet oder geschlossen wird.

„Animating“ ist „false“, wenn die Tastatur vollständig geöffnet oder geschlossen ist. Wenn „ animating “ den Wert „ true “ und „ visibility “ den Wert „ true “ hat, wird die Tastatur gerade geöffnet. Wenn „ animating “ den Wert „ true “ und „ visibility “ den Wert „false“ hat, wird die Tastatur gerade geschlossen.

Zugriffsfunktionen:

bool isAnimating() const

Notifier-Signal:

void animatingChanged()

[read-only] cursorRectangle : QRectF

Cursorrechteck des Eingabefelds in Fensterkoordinaten.

Das Cursorrechteck wird häufig von verschiedenen Textbearbeitungssteuerelementen wie Popups zur Textvorhersage verwendet, um dem eingegebenen Text zu folgen.

Zugriffsfunktionen:

QRectF cursorRectangle() const

Notifier-Signal:

void cursorRectangleChanged()

[read-only] inputDirection : Qt::LayoutDirection

Aktuelle Eingaberichtung.

Zugriffsfunktionen:

Qt::LayoutDirection inputDirection() const

Benachrichtigungssignal:

void inputDirectionChanged(Qt::LayoutDirection newDirection)

[read-only] inputItemClipRectangle : QRectF

Das beschnittene Rechteck des Eingabeelements in Fensterkoordinaten.

Das beschnittene Eingaberechteck wird häufig von verschiedenen Eingabemethoden verwendet, um zu bestimmen, wie viel Platz auf dem Bildschirm für die jeweilige Eingabemethode (z. B. die virtuelle Tastatur) zur Verfügung steht.

Zugriffsfunktionen:

QRectF inputItemClipRectangle() const

Notifier-Signal:

void inputItemClipRectangleChanged()

[read-only] keyboardRectangle : QRectF

Geometrie der virtuellen Tastatur in Fensterkoordinaten.

Dies kann ein leeres Rechteck sein, wenn die Geometrie der Tastatur nicht bekannt ist. Dies ist bei einer schwebenden Tastatur unter Android der Fall.

Zugriffsfunktionen:

QRectF keyboardRectangle() const

Notifier-Signal:

void keyboardRectangleChanged()

[read-only] locale : QLocale

Aktuelle Eingabesprachumgebung.

Zugriffsfunktionen:

QLocale locale() const

Benachrichtigungssignal:

void localeChanged()

[read-only] visible : bool

Sichtbarkeit der virtuellen Tastatur auf dem Bildschirm

Bei Geräten ohne virtuelle Tastatur bleibt die Sichtbarkeit der Eingabemethode auf „false“ gesetzt.

Zugriffsfunktionen:

bool isVisible() const

Benachrichtigungssignal:

void visibleChanged()

Siehe auch „ show()“ und „ hide()“.

Dokumentation der Mitgliedsfunktionen

[slot] void QInputMethod::commit()

Überträgt das Wort, das der Benutzer gerade verfasst, in den Editor. Die Funktion wird vor allem von Eingabemethoden mit Textvorhersagefunktionen sowie von Methoden benötigt, bei denen sich das zur Eingabe von Zeichen verwendete Skript von dem Skript unterscheidet, das tatsächlich an den Editor angehängt wird. Jede Aktion, die die Texteingabe unterbricht, muss den Eingabezustand durch Aufruf der Funktion `commit()` zurücksetzen, beispielsweise wenn der Cursor an eine andere Stelle bewegt wird.

[slot] void QInputMethod::hide()

Fordert das Schließen der virtuellen Tastatur an.

Normalerweise sollten Anwendungen diese Funktion nicht aufrufen müssen; die Tastatur sollte sich automatisch schließen, wenn der Texteditor den Fokus verliert, beispielsweise wenn die übergeordnete Ansicht geschlossen wird.

QRectF QInputMethod::inputItemRectangle() const

Gibt die Geometrie des Eingabeelements in den Koordinaten des Eingabeelements zurück.

Siehe auch „ setInputItemRectangle()“.

QTransform QInputMethod::inputItemTransform() const

Gibt die Transformation von den Koordinaten der Eingabeelemente in die Fensterkoordinaten zurück.

Siehe auch „ setInputItemTransform()“.

[slot] void QInputMethod::invokeAction(QInputMethod::Action a, int cursorPosition)

Wird vom Eingabeelement aufgerufen, wenn der Benutzer auf das gerade eingegebene Wort tippt, wie durch die Aktion „ a “ und die angegebene „ cursorPosition “ angegeben. Eingabemethoden nutzen diese Informationen häufig, um dem Benutzer weitere Wortvorschläge anzubieten.

[static] QVariant QInputMethod::queryFocusObject(Qt::InputMethodQuery query, const QVariant &argument)

Rufe die Funktion „ query “ für das aktuell fokussierte Objekt mit den Parametern „ argument “ auf und gib das Ergebnis zurück.

[slot] void QInputMethod::reset()

Setzt den Status der Eingabemethode zurück. Beispielsweise ruft ein Texteditor diese Methode normalerweise vor dem Einfügen von Text auf, um das Widget für die Texteingabe vorzubereiten.

Die Eingabemethode wird automatisch zurückgesetzt, wenn sich der Editor mit Fokus ändert.

void QInputMethod::setInputItemRectangle(const QRectF &rect)

Legt die Geometrie des Eingabeelements auf ` rect` fest, bezogen auf die Koordinaten des Eingabeelements. Dies muss vom Fenster mit Fokus – beispielsweise von QQuickCanvas – aktualisiert werden, sobald das Element innerhalb der Szene verschoben wird oder der Fokus wechselt.

Siehe auch ` inputItemRectangle()`.

void QInputMethod::setInputItemTransform(const QTransform &transform)

Legt die Transformation von den Koordinaten der Eingabeelemente in Fensterkoordinaten fest auf transform. Die Elementtransformation muss vom aktiven Fenster – beispielsweise QQuickCanvas – aktualisiert werden, sobald ein Element innerhalb der Szene verschoben wird.

Siehe auch ` inputItemTransform()`.

void QInputMethod::setVisible(bool visible)

Steuert die Sichtbarkeit der Tastatur. Entspricht dem Aufruf von ` show()` (wenn ` visible ` auf ` true` gesetzt ist) oder ` hide()` (wenn ` visible ` auf ` false` gesetzt ist).

Siehe auch isVisible(), show() und hide().

[slot] void QInputMethod::show()

Fordert das Öffnen der virtuellen Tastatur an. Wenn die Plattform keine virtuelle Tastatur bereitstellt, bleibt die Sichtbarkeit auf „false“ gesetzt.

Normalerweise sollten Anwendungen diese Funktion nicht aufrufen müssen; die Tastatur sollte sich automatisch öffnen, sobald der Texteditor den Fokus erhält.

[slot] void QInputMethod::update(Qt::InputMethodQueries queries)

Wird vom Eingabeelement aufgerufen, um die Eingabemethoden der Plattform darüber zu informieren, wenn sich der Status der Abfrageattribute der Eingabemethode des Editors geändert hat. Beim Aufruf der Funktion muss der Parameter „ queries “ verwendet werden, um anzugeben, was sich geändert hat; die Eingabemethode kann damit über „ QInputMethodQueryEvent “ Abfragen zu den Attributen durchführen, die für sie von Interesse sind.

Insbesondere ist es wichtig, „update“ immer dann aufzurufen, wenn sich die Cursorposition ändert, da dies häufig dazu führt, dass sich auch andere Abfrageattribute wie der umgebende Text und die Textauswahl ändern. Die Attribute, die sich häufig zusammen mit der Cursorposition ändern, wurden der Einfachheit halber im Wert von „ Qt::ImQueryInput “ zusammengefasst.

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