Auf dieser Seite

QVirtualKeyboardInputEngine Class

Die Klasse „ InputEngine “ stellt eine Eingabe-Engine bereit, die die Integration von C++ und QML unterstützt. Mehr...

Überschrift: #include <QVirtualKeyboardInputEngine>
CMake: find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard)
target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)
qmake: QT += virtualkeyboard
In QML: InputEngine
Erbt von: QObject

Öffentliche Typen

enum class InputMode { Latin, Numeric, Dialable, Pinyin, Cangjie, …, HiraganaFlick }
enum class PatternRecognitionMode { None, PatternRecognitionDisabled, Handwriting, HandwritingRecoginition }
enum class ReselectFlag { WordBeforeCursor, WordAfterCursor, WordAtCursor }
flags ReselectFlags
enum class TextCase { Lower, Upper }

Eigenschaften

Öffentliche Funktionen

Qt::Key activeKey() const
QVirtualKeyboardInputContext *inputContext() const
QVirtualKeyboardAbstractInputMethod *inputMethod() const
QVirtualKeyboardInputEngine::InputMode inputMode() const
QList<int> inputModes() const
QList<int> patternRecognitionModes() const
Qt::Key previousKey() const
(since QtQuick.VirtualKeyboard 2.0) bool reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)
void setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)
void setInputMode(QVirtualKeyboardInputEngine::InputMode inputMode)
(since QtQuick.VirtualKeyboard 2.0) QVirtualKeyboardTrace *traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)
bool traceEnd(QVirtualKeyboardTrace *trace)
void virtualKeyCancel()
bool virtualKeyClick(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
bool virtualKeyPress(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool repeat)
bool virtualKeyRelease(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
QVirtualKeyboardSelectionListModel *wordCandidateListModel() const
bool wordCandidateListVisibleHint() const

Signale

void activeKeyChanged(Qt::Key key)
void inputMethodChanged()
void inputMethodReset()
void inputMethodUpdate()
void inputModeChanged()
void inputModesChanged()
(since QtQuick.VirtualKeyboard 2.0) void patternRecognitionModesChanged()
void previousKeyChanged(Qt::Key key)
void virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat)
void wordCandidateListModelChanged()
void wordCandidateListVisibleHintChanged()

Ausführliche Beschreibung

Die Eingabe-Engine ist dafür zuständig, Eingabeereignisse an die Eingabemethoden weiterzuleiten. Die eigentliche Eingabelogik wird von den Eingabemethoden implementiert.

Die Eingabe-Engine umfasst auch die Standard-Eingabemethode, die die Standardverarbeitung übernimmt, falls die aktive Eingabemethode das Ereignis nicht verarbeitet.

Dokumentation zum Mitgliedstyp

enum class QVirtualKeyboardInputEngine::InputMode

Diese Enumeration legt den Eingabemodus für die Eingabemethode fest.

KonstanteWertBeschreibung
QVirtualKeyboardInputEngine::InputMode::Latin0Der Standard-Eingabemodus für lateinischen Text.
QVirtualKeyboardInputEngine::InputMode::Numeric1Es ist nur die numerische Eingabe zulässig.
QVirtualKeyboardInputEngine::InputMode::Dialable2Es ist nur die Eingabe per Wählcode erlaubt.
QVirtualKeyboardInputEngine::InputMode::Pinyin3Pinyin-Eingabemodus für Chinesisch.
QVirtualKeyboardInputEngine::InputMode::Cangjie4Cangjie-Eingabemodus für Chinesisch.
QVirtualKeyboardInputEngine::InputMode::Zhuyin5Zhuyin-Eingabemodus für Chinesisch.
QVirtualKeyboardInputEngine::InputMode::Hangul6Hangul-Eingabemodus für Koreanisch.
QVirtualKeyboardInputEngine::InputMode::Hiragana7Hiragana-Eingabemodus für Japanisch.
QVirtualKeyboardInputEngine::InputMode::Katakana8Katakana-Eingabemodus für Japanisch.
QVirtualKeyboardInputEngine::InputMode::FullwidthLatin9Eingabemodus „Vollbreite-Latein“ für ostasiatische Sprachen.
QVirtualKeyboardInputEngine::InputMode::Greek10Griechischer Eingabemodus.
QVirtualKeyboardInputEngine::InputMode::Cyrillic11Kyrillischer Eingabemodus.
QVirtualKeyboardInputEngine::InputMode::Arabic12Arabischer Eingabemodus.
QVirtualKeyboardInputEngine::InputMode::Hebrew13Hebräischer Eingabemodus.
QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting14Chinesischer Handschrifteingabemodus.
QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting15Japanischer Handschrifteingabemodus.
QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting16Koreanischer Handschrifteingabemodus.
QVirtualKeyboardInputEngine::InputMode::Thai17Thailändischer Eingabemodus.
QVirtualKeyboardInputEngine::InputMode::Stroke18Strich-Eingabemodus für Chinesisch.
QVirtualKeyboardInputEngine::InputMode::Romaji19Romaji-Eingabemodus für Japanisch.
QVirtualKeyboardInputEngine::InputMode::HiraganaFlick20Flick-Eingabemodus für Japanisch.

enum class QVirtualKeyboardInputEngine::PatternRecognitionMode

Diese Enumeration legt den Eingabemodus für die Eingabemethode fest.

KonstanteWertBeschreibung
QVirtualKeyboardInputEngine::PatternRecognitionMode::None0Die Mustererkennung ist nicht verfügbar.
QVirtualKeyboardInputEngine::PatternRecognitionMode::PatternRecognitionDisabledNoneobsolete Verwenden Sie PatternRecognitionMode::None
QVirtualKeyboardInputEngine::PatternRecognitionMode::Handwriting1Mustererkennungsmodus für die Handschrifterkennung.
QVirtualKeyboardInputEngine::PatternRecognitionMode::HandwritingRecoginitionHandwritingobsolete Verwenden Sie PatternRecognitionMode::Handwriting

enum class QVirtualKeyboardInputEngine::ReselectFlag
flags QVirtualKeyboardInputEngine::ReselectFlags

Diese Enumeration legt die Regeln für die Wortauswahl fest.

KonstanteWertBeschreibung
QVirtualKeyboardInputEngine::ReselectFlag::WordBeforeCursor0x1Das Wort vor dem Cursor aktivieren. Wenn dieses Flag ausschließlich verwendet wird, muss das Wort genau am Cursor enden.
QVirtualKeyboardInputEngine::ReselectFlag::WordAfterCursor0x2Das Wort nach dem Cursor aktivieren. Wenn dieses Flag ausschließlich verwendet wird, muss das Wort genau am Cursor beginnen.
QVirtualKeyboardInputEngine::ReselectFlag::WordAtCursorWordBeforeCursor | WordAfterCursorDas Wort am Cursor aktivieren. Dieses Flag ist eine Kombination der oben genannten Flags, mit der Ausnahme, dass das Wort nicht am Cursor beginnen oder enden darf.

Der Typ „ReselectFlags“ ist ein „typedef“ für „QFlags<ReselectFlag>“. Er speichert eine ODER-Kombination von „ReselectFlag“-Werten.

enum class QVirtualKeyboardInputEngine::TextCase

Diese Enumeration legt die Groß-/Kleinschreibung für die Eingabemethode fest.

KonstanteWertBeschreibung
QVirtualKeyboardInputEngine::TextCase::Lower0Text in Kleinbuchstaben.
QVirtualKeyboardInputEngine::TextCase::Upper1Text in Großbuchstaben.

Eigenschaftsdokumentation

[read-only] activeKey : Qt::Key

Diese Eigenschaft enthält die aktuell gedrückte Taste.

Derzeit gedrückte Taste.

Zugriffsfunktionen:

Qt::Key activeKey() const

Benachrichtigungssignal:

void activeKeyChanged(Qt::Key key)

inputMethod : QVirtualKeyboardAbstractInputMethod*

Diese Eigenschaft enthält die aktive Eingabemethode.

Verwenden Sie diese Eigenschaft, um die Eingabemethode als aktiv festzulegen oder um zu überwachen, wann sich die aktive Eingabemethode ändert.

Zugriffsfunktionen:

QVirtualKeyboardAbstractInputMethod *inputMethod() const
void setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)

Benachrichtigungssignal:

inputMode : InputMode

Diese Eigenschaft enthält den aktuellen Eingabemodus.

Verwenden Sie diese Eigenschaft, um den aktuellen Eingabemodus abzurufen oder festzulegen. Die Schnittstelle „ InputEngine::inputModes “ stellt eine Liste der gültigen Eingabemodi für die aktuelle Eingabemethode und die aktuelle Ländereinstellung bereit.

Zugriffsfunktionen:

QVirtualKeyboardInputEngine::InputMode inputMode() const
void setInputMode(QVirtualKeyboardInputEngine::InputMode inputMode)

Benachrichtigungssignal:

[read-only] inputModes : QList<int>

Diese Eigenschaft enthält die verfügbaren Eingabemodi für die aktive Eingabemethode.

Die Liste der verfügbaren Eingabemodi hängt von der Eingabemethode und der Ländereinstellung ab. Diese Eigenschaft wird aktualisiert, sobald sich eine der beiden Abhängigkeiten ändert.

Zugriffsfunktionen:

QList<int> inputModes() const

Benachrichtigungssignal:

[read-only, since QtQuick.VirtualKeyboard 2.0] patternRecognitionModes : QList<int>

Diese Eigenschaft enthält die Liste der verfügbaren Mustererkennungsmodi.

Die Liste der verfügbaren Mustererkennungsmodi.

Diese Aufzählung wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.

Zugriffsfunktionen:

QList<int> patternRecognitionModes() const

Notifier-Signal:

[read-only] previousKey : Qt::Key

Diese Eigenschaft enthält die zuletzt gedrückte Taste.

Zuvor gedrückte Taste.

Zugriffsfunktionen:

Qt::Key previousKey() const

Benachrichtigungssignal:

void previousKeyChanged(Qt::Key key)

[read-only] wordCandidateListModel : QVirtualKeyboardSelectionListModel*

Listenmodell für die Wortvorschlagsliste.

Verwenden Sie diese Eigenschaft, um auf das Listenmodell für die Wortkandidatenliste zuzugreifen.

Zugriffsfunktionen:

QVirtualKeyboardSelectionListModel *wordCandidateListModel() const

Benachrichtigungssignal:

void wordCandidateListModelChanged()

[read-only] wordCandidateListVisibleHint : bool

Sichtbarer Hinweis für die Wortkandidatenliste.

Verwenden Sie diese Eigenschaft, um festzulegen, ob die Wortvorschlagsliste in der Benutzeroberfläche sichtbar sein soll.

Zugriffsfunktionen:

bool wordCandidateListVisibleHint() const

Notifier-Signal:

void wordCandidateListVisibleHintChanged()

Dokumentation der Member-Funktionen

Qt::Key QVirtualKeyboardInputEngine::activeKey() const

Gibt den derzeit aktiven Schlüssel zurück oder „ Qt::Key_unknown “, falls kein Schlüssel aktiv ist.

Hinweis: Getter -Funktion für die Eigenschaft „activeKey“.

[signal] void QVirtualKeyboardInputEngine::activeKeyChanged(Qt::Key key)

Zeigt an, dass sich die aktive Eigenschaft „ key “ geändert hat.

Hinweis: Notifier -Signal für die Eigenschaft „ activeKey “.

QVirtualKeyboardInputContext *QVirtualKeyboardInputEngine::inputContext() const

Gibt die mit der Eingabe-Engine verknüpfte „ InputContext “-Instanz zurück.

QVirtualKeyboardAbstractInputMethod *QVirtualKeyboardInputEngine::inputMethod() const

Gibt die aktive Eingabemethode zurück.

Hinweis: Getter -Funktion für die Eigenschaft „inputMethod“.

Siehe auch „ setInputMethod()“.

[signal] void QVirtualKeyboardInputEngine::inputMethodChanged()

Zeigt an, dass sich die Eingabemethode geändert hat.

Hinweis: Benachrichtigungssignal für die Eigenschaft „ inputMethod “.

[signal] void QVirtualKeyboardInputEngine::inputMethodReset()

Wird ausgegeben, wenn die Eingabemethode zurückgesetzt werden muss.

Hinweis: Dieses Signal wird automatisch mit den Methoden „ QVirtualKeyboardAbstractInputMethod::reset()“ und „ InputMethod::reset()“ verknüpft, sobald die Eingabemethode aktiviert wird.

[signal] void QVirtualKeyboardInputEngine::inputMethodUpdate()

Hinweis: Dieses Signal wird automatisch mit „ QVirtualKeyboardAbstractInputMethod::update “ () und „ InputMethod::update “ () verbunden, sobald die Eingabemethode aktiviert wird.

[signal] void QVirtualKeyboardInputEngine::inputModeChanged()

Zeigt an, dass sich der Eingabemodus geändert hat.

Hinweis: Benachrichtigungssignal für die Eigenschaft „ inputMode “.

QList<int> QVirtualKeyboardInputEngine::inputModes() const

Gibt die Liste der verfügbaren Eingabemodi zurück.

Hinweis: Getter- Funktion für die Eigenschaft `inputModes`.

[signal] void QVirtualKeyboardInputEngine::inputModesChanged()

Zeigt an, dass sich die verfügbaren Eingabemodi geändert haben.

Hinweis: Notifier -Signal für die Eigenschaft „ inputModes “.

QList<int> QVirtualKeyboardInputEngine::patternRecognitionModes() const

Gibt eine Liste der unterstützten Mustererkennungsmodi zurück.

Hinweis: Getter- Funktion für die Eigenschaft `patternRecognitionModes`.

[signal, since QtQuick.VirtualKeyboard 2.0] void QVirtualKeyboardInputEngine::patternRecognitionModesChanged()

Zeigt an, dass sich die verfügbaren Mustererkennungsmodi geändert haben.

Hinweis: Notifier -Signal für die Eigenschaft „ patternRecognitionModes “.

Diese Funktion wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.

Qt::Key QVirtualKeyboardInputEngine::previousKey() const

Gibt den zuletzt aktiven Schlüssel zurück oder „ Qt::Key_unknown “, falls kein Schlüssel aktiv war.

Hinweis: Getter -Funktion für die Eigenschaft „previousKey“.

[signal] void QVirtualKeyboardInputEngine::previousKeyChanged(Qt::Key key)

Zeigt an, dass sich die vorherige Eigenschaft „ key “ geändert hat.

Hinweis: Notifier -Signal für die Eigenschaft „ previousKey “.

[invokable, since QtQuick.VirtualKeyboard 2.0] bool QVirtualKeyboardInputEngine::reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)

Diese Funktion versucht, ein Wort an der Position cursorPosition erneut auszuwählen. Die Parameter reselectFlags legen fest, wie das Wort in Bezug auf die Cursorposition ausgewählt werden soll.

Die Funktion gibt „ true “ zurück, wenn das Wort erfolgreich erneut ausgewählt wurde.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

Diese Funktion wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.

void QVirtualKeyboardInputEngine::setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)

Legt „ inputMethod “ als aktive Eingabemethode fest.

Hinweis: Setter -Funktion für die Eigenschaft „ inputMethod “.

Siehe auch inputMethod().

[invokable, since QtQuick.VirtualKeyboard 2.0] QVirtualKeyboardTrace *QVirtualKeyboardInputEngine::traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)

Stellt eine Trace-Interaktion mit der Eingabe-Engine her.

Die Trace-Interaktion wird durch die „ traceId “ eindeutig identifiziert. Die Eingabe-Engine weist dem „ QVirtualKeyboardTrace “-Objekt die ID zu, sofern die Eingabemethode das Ereignis akzeptiert.

Die „ patternRecognitionMode “ gibt den für das Muster verwendeten Erkennungsmodus an.

Wenn die aktuelle Eingabemethode das Ereignis akzeptiert, gibt sie ein „ QVirtualKeyboardTrace “-Objekt zurück, das dieser Interaktion zugeordnet ist. Wenn die Eingabemethode das Ereignis verwirft, gibt sie den Wert NULL zurück.

Das „ traceCaptureDeviceInfo “-Objekt liefert Informationen zum Quellgerät, und das „ traceScreenInfo “-Objekt liefert Informationen zum Bildschirmkontext.

Per Definition bleibt das „ QVirtualKeyboardTrace “-Objekt gültig, bis die Methode „ traceEnd()“ aufgerufen wird.

Die Trace-Interaktion wird durch den Aufruf der Methode ` traceEnd()` beendet.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

Diese Funktion wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.

[invokable] bool QVirtualKeyboardInputEngine::traceEnd(QVirtualKeyboardTrace *trace)

Beendet die Trace-Interaktion mit der Eingabe-Engine.

Das Objekt „ trace “ kann nach dem Aufruf dieser Funktion jederzeit verworfen werden.

Die Funktion gibt „true“ zurück, wenn die Trace-Interaktion akzeptiert wurde (d. h., die Berührungsereignisse sollten nicht für andere Zwecke verwendet werden).

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML heraus aufgerufen werden. Siehe Q_INVOKABLE.

[invokable] void QVirtualKeyboardInputEngine::virtualKeyCancel()

Setzt den Status der aktiven Taste zurück, ohne das Tastenereignis auszulösen. Diese Methode ist nützlich, wenn der Benutzer die aktuelle Taste verwirft und der Tastenzustand wiederhergestellt werden muss.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

[invokable] bool QVirtualKeyboardInputEngine::virtualKeyClick(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)

Löst ein Tastenklick-Ereignis für die angegebenen Werte „ key “, „ text “ und „ modifiers “ aus. Gibt „ true “ zurück, wenn das Tastenereignis von der Eingabe-Engine akzeptiert wurde.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

[signal] void QVirtualKeyboardInputEngine::virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat)

Gibt an, dass auf das virtuelle „ key “ mit den angegebenen Werten „ text “ und „ modifiers “ geklickt wurde. Der Wert „ isAutoRepeat “ gibt an, ob das Ereignis automatisch wiederholt wird, solange die Taste gedrückt gehalten wird. Dieses Signal wird ausgegeben, nachdem die Eingabemethode das Tastenereignis verarbeitet hat.

[invokable] bool QVirtualKeyboardInputEngine::virtualKeyPress(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool repeat)

Wird von der Tastaturebene aufgerufen, um anzuzeigen, dass die Taste „ key “ gedrückt wurde, mit den angegebenen Werten für „ text “ und „ modifiers “.

Die Taste „ key “ wird als aktive Taste (gedrückte Taste) festgelegt. Das eigentliche Tastenereignis wird ausgelöst, wenn die Taste über die Methode „ virtualKeyRelease()“ losgelassen wird. Das Tastendruckereignis kann durch Aufruf von „ virtualKeyCancel()“ verworfen werden.

Der Tastendruck löst außerdem den Tastendruck-Wiederholungstimer aus, wenn ` repeat ` auf ` true` gesetzt ist.

Gibt ` true ` zurück, wenn die Taste von dieser Eingabe-Engine akzeptiert wurde.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

Siehe auch „ virtualKeyCancel()“ und „ virtualKeyRelease()“.

[invokable] bool QVirtualKeyboardInputEngine::virtualKeyRelease(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)

Löst die Taste unter „ key “ aus. Die Methode löst ein Tastenereignis für die Eingabemethode aus, sofern das Ereignis nicht durch einen sich wiederholenden Timer generiert wurde. Die Parameter „ text “ und „ modifiers “ werden an die Eingabemethode übergeben.

Gibt ` true ` zurück, wenn die Taste von der Eingabe-Engine akzeptiert wurde.

Hinweis: Diese Funktion kann über das Metaobjektsystem und aus QML aufgerufen werden. Siehe Q_INVOKABLE.

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