QInputMethod Class

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

Kopfzeile: #include <QInputMethod>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Vererbt: 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)

Detaillierte Beschreibung

QInputMethod wird von den Texteditoren für die Integration in die Texteingabemethoden der Plattform und allgemeiner von Anwendungsansichten für die Abfrage verschiedener Texteingabemethoden-bezogener Informationen wie Sichtbarkeit der virtuellen Tastatur und Abmessungen der Tastatur verwendet.

Qt Quick QInputMethod bietet auch Zugriff auf QML über Qt global object als Qt.inputMethod Eigenschaft.

Dokumentation des Membertyps

enum QInputMethod::Action

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

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

Siehe auch invokeAction().

Eigenschaft Dokumentation

[read-only] anchorRectangle : const QRectF

Das Ankerrechteck des Eingabeelements in Fensterkoordinaten.

Das Anker-Rechteck wird oft von verschiedenen Textbearbeitungs-Steuerelementen wie Textvorhersage-Popups verwendet, um der Textauswahl zu folgen.

Zugriffsfunktionen:

QRectF anchorRectangle() const

Benachrichtigungssignal:

void anchorRectangleChanged()

[read-only] animating : const bool

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

Animieren ist falsch, wenn die Tastatur vollständig geöffnet oder geschlossen ist. Wenn animating gleich true und visibility gleich true ist, wird die Tastatur geöffnet. Wenn animating gleich true und visibility gleich false ist, ist die Tastatur geschlossen.

Zugriffsfunktionen:

bool isAnimating() const

Benachrichtigungssignal:

void animatingChanged()

[read-only] cursorRectangle : const QRectF

Das Cursor-Rechteck des Eingabeelements in Fensterkoordinaten.

Das Cursor-Rechteck wird häufig von verschiedenen Textbearbeitungs-Steuerelementen wie Textvorhersage-Popups verwendet, um dem eingegebenen Text zu folgen.

Zugriffsfunktionen:

QRectF cursorRectangle() const

Melder-Signal:

void cursorRectangleChanged()

[read-only] inputDirection : const Qt::LayoutDirection

Stromeingangsrichtung.

Zugriffsfunktionen:

Qt::LayoutDirection inputDirection() const

Melder-Signal:

void inputDirectionChanged(Qt::LayoutDirection newDirection)

[read-only] inputItemClipRectangle : const QRectF

Das abgeschnittene Rechteck des Eingabeelements in Fensterkoordinaten.

Das abgeschnittene Eingabe-Rechteck wird häufig von verschiedenen Eingabemethoden verwendet, um zu bestimmen, wie viel Bildschirmfläche für die Eingabemethode zur Verfügung steht (z. B. virtuelle Tastatur).

Zugriffsfunktionen:

QRectF inputItemClipRectangle() const

Benachrichtigungssignal:

void inputItemClipRectangleChanged()

[read-only] keyboardRectangle : const QRectF

Die Geometrie der virtuellen Tastatur in Fensterkoordinaten.

Dies kann ein leeres Rechteck sein, wenn es nicht möglich ist, die Geometrie der Tastatur zu kennen. Dies ist der Fall bei einer schwebenden Tastatur auf Android.

Zugriffsfunktionen:

QRectF keyboardRectangle() const

Benachrichtigungssignal:

void keyboardRectangleChanged()

[read-only] locale : const QLocale

Aktuelles Eingabegebietsschema.

Zugriffsfunktionen:

QLocale locale() const

Melder-Signal:

void localeChanged()

[read-only] visible : const bool

Sichtbarkeit der virtuellen Tastatur auf dem Bildschirm

Die Sichtbarkeit der Eingabemethode bleibt bei Geräten ohne virtuelle Tastatur falsch.

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 schreibt, in den Editor. Die Funktion wird vor allem von Eingabemethoden mit Textvorhersagefunktionen benötigt und von Methoden, bei denen das Skript, das für die Eingabe von Zeichen verwendet wird, sich von dem Skript unterscheidet, das tatsächlich an den Editor angehängt wird. Jede Aktion, die das Verfassen des Textes unterbricht, muss den Zustand des Verfassens durch den Aufruf der Funktion commit() löschen, z. B. wenn der Cursor an eine andere Stelle bewegt wird.

[slot] void QInputMethod::hide()

Fordert die virtuelle Tastatur zum Schließen auf.

Normalerweise sollten Anwendungen diese Funktion nicht aufrufen müssen. Die Tastatur sollte automatisch geschlossen werden, wenn der Texteditor den Fokus verliert, z. B. wenn die übergeordnete Ansicht geschlossen wird.

QRectF QInputMethod::inputItemRectangle() const

Gibt die Geometrie des Eingabeelements in Eingabeelementkoordinaten zurück.

Siehe auch setInputItemRectangle().

QTransform QInputMethod::inputItemTransform() const

Gibt die Transformation von den Koordinaten des eingegebenen Elements zu den Fensterkoordinaten zurück.

Siehe auch setInputItemTransform().

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

Wird vom Eingabeelement aufgerufen, wenn der Benutzer auf das Wort tippt, das gerade zusammengesetzt wird, wie aus der Aktion a und der angegebenen cursorPosition hervorgeht. Eingabemethoden nutzen diese Information häufig, um dem Benutzer weitere Wortvorschläge zu unterbreiten.

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

Senden Sie query an das aktuelle Fokusobjekt mit den Parametern argument und geben Sie das Ergebnis zurück.

[slot] void QInputMethod::reset()

Setzt den Zustand der Eingabemethode zurück. Zum Beispiel ruft ein Texteditor diese Methode normalerweise auf, bevor er einen Text einfügt, um das Widget bereit zu machen, einen Text zu akzeptieren.

Die Eingabemethode wird automatisch zurückgesetzt, wenn der fokussierte Editor wechselt.

void QInputMethod::setInputItemRectangle(const QRectF &rect)

Setzt die Geometrie des Eingabeelements auf rect, in Koordinaten des Eingabeelements. Dies muss vom fokussierten Fenster wie QQuickCanvas aktualisiert werden, wenn das Element innerhalb der Szene bewegt oder der Fokus geändert wird.

Siehe auch inputItemRectangle().

void QInputMethod::setInputItemTransform(const QTransform &transform)

Setzt die Transformation von den Koordinaten des eingegebenen Elements zu den Fensterkoordinaten auf transform. Die Elementtransformation muss durch das fokussierte Fenster wie QQuickCanvas aktualisiert werden, wenn das Element innerhalb der Szene bewegt wird.

Siehe auch inputItemTransform().

void QInputMethod::setVisible(bool visible)

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

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

[slot] void QInputMethod::show()

Fordert eine virtuelle Tastatur zum Öffnen an. Wenn die Plattform keine virtuelle Tastatur zur Verfügung stellt, bleibt die Sichtbarkeit false.

Normalerweise sollten Anwendungen diese Funktion nicht aufrufen müssen, da die Tastatur automatisch geöffnet wird, wenn der Texteditor den Fokus erhält.

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

Wird vom Eingabeelement aufgerufen, um die Eingabemethoden der Plattform zu informieren, wenn es Zustandsänderungen in den Abfrageattributen der Eingabemethoden des Editors gegeben hat. Beim Aufruf der Funktion muss der Parameter queries verwendet werden, um mitzuteilen, was sich geändert hat, was die Eingabemethode verwenden kann, um Abfragen für Attribute zu machen, die sie mit QInputMethodQueryEvent interessiert.

Insbesondere der Aufruf von update, wenn sich die Cursorposition ändert, ist wichtig, da sich dadurch oft auch andere Abfrageattribute wie umliegender Text und Textauswahl ändern. Die Attribute, die sich häufig zusammen mit der Cursorposition ändern, wurden der Einfachheit halber in Qt::ImQueryInput value gruppiert.

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