QVirtualKeyboardInputEngine Class
Die Klasse InputEngine bietet eine Eingabemaschine, die die Integration von C++ und QML unterstützt. Mehr...
Kopfzeile: | #include <QVirtualKeyboardInputEngine> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard) target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard) |
qmake: | QT += virtualkeyboard |
In QML: | InputEngine |
Vererbt: | QObject |
Öffentliche Typen
enum class | InputMode { Latin, Numeric, Dialable, Pinyin, Cangjie, …, Romaji } |
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() |
Detaillierte Beschreibung
Die Eingabe-Engine ist für die Weiterleitung von Eingabeereignissen an Eingabemethoden zuständig. Die eigentliche Eingabelogik wird von den Eingabemethoden implementiert.
Die Eingabe-Engine umfasst auch die Standard-Eingabemethode, die für die Standardverarbeitung sorgt, wenn die aktive Eingabemethode das Ereignis nicht verarbeitet.
Dokumentation der Mitgliedstypen
enum class QVirtualKeyboardInputEngine::InputMode
Diese Aufzählung gibt den Eingabemodus für die Eingabemethode an.
Konstante | Wert | Beschreibung |
---|---|---|
QVirtualKeyboardInputEngine::InputMode::Latin | 0 | Der Standard-Eingabemodus für lateinischen Text. |
QVirtualKeyboardInputEngine::InputMode::Numeric | 1 | Nur numerische Eingaben sind erlaubt. |
QVirtualKeyboardInputEngine::InputMode::Dialable | 2 | Nur wählbare Eingaben sind erlaubt. |
QVirtualKeyboardInputEngine::InputMode::Pinyin | 3 | Pinyin-Eingabemodus für Chinesisch. |
QVirtualKeyboardInputEngine::InputMode::Cangjie | 4 | Cangjie-Eingabemodus für Chinesisch. |
QVirtualKeyboardInputEngine::InputMode::Zhuyin | 5 | Zhuyin-Eingabemodus für Chinesisch. |
QVirtualKeyboardInputEngine::InputMode::Hangul | 6 | Hangul-Eingabemodus für Koreanisch. |
QVirtualKeyboardInputEngine::InputMode::Hiragana | 7 | Hiragana-Eingabemodus für Japanisch. |
QVirtualKeyboardInputEngine::InputMode::Katakana | 8 | Katakana-Eingabemodus für Japanisch. |
QVirtualKeyboardInputEngine::InputMode::FullwidthLatin | 9 | Lateineingabemodus in voller Breite für ostasiatische Sprachen. |
QVirtualKeyboardInputEngine::InputMode::Greek | 10 | Griechischer Eingabemodus. |
QVirtualKeyboardInputEngine::InputMode::Cyrillic | 11 | Kyrillischer Eingabemodus. |
QVirtualKeyboardInputEngine::InputMode::Arabic | 12 | Arabischer Eingabemodus. |
QVirtualKeyboardInputEngine::InputMode::Hebrew | 13 | Hebräischer Eingabemodus. |
QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting | 14 | Chinesischer Handschrifteingabemodus. |
QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting | 15 | Japanischer Handschrifteingabemodus. |
QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting | 16 | Koreanischer Handschrifteingabemodus. |
QVirtualKeyboardInputEngine::InputMode::Thai | 17 | Thailändischer Eingabemodus. |
QVirtualKeyboardInputEngine::InputMode::Stroke | 18 | Stroke-Eingabemodus für Chinesisch. |
QVirtualKeyboardInputEngine::InputMode::Romaji | 19 | Romaji-Eingabemodus für Japanisch. |
enum class QVirtualKeyboardInputEngine::PatternRecognitionMode
Diese Aufzählung gibt den Eingabemodus für die Eingabemethode an.
Konstante | Wert | Beschreibung |
---|---|---|
QVirtualKeyboardInputEngine::PatternRecognitionMode::None | 0 | Die Mustererkennung ist nicht verfügbar. |
QVirtualKeyboardInputEngine::PatternRecognitionMode::PatternRecognitionDisabled | None | obsolete Verwenden Sie PatternRecognitionMode::None |
QVirtualKeyboardInputEngine::PatternRecognitionMode::Handwriting | 1 | Mustererkennungsmodus für die Handschrifterkennung. |
QVirtualKeyboardInputEngine::PatternRecognitionMode::HandwritingRecoginition | Handwriting | obsolete Verwenden Sie PatternRecognitionMode::Handwriting |
enum class QVirtualKeyboardInputEngine::ReselectFlag
flags QVirtualKeyboardInputEngine::ReselectFlags
Diese Aufzählung spezifiziert die Regeln für die Wortneuauswahl.
Konstante | Wert | Beschreibung |
---|---|---|
QVirtualKeyboardInputEngine::ReselectFlag::WordBeforeCursor | 0x1 | Aktiviert das Wort vor dem Cursor. Wenn ausschließlich dieses Flag verwendet wird, muss das Wort genau am Cursor enden. |
QVirtualKeyboardInputEngine::ReselectFlag::WordAfterCursor | 0x2 | Aktiviert das Wort nach dem Cursor. Wenn ausschließlich dieses Flag verwendet wird, muss das Wort genau am Cursor beginnen. |
QVirtualKeyboardInputEngine::ReselectFlag::WordAtCursor | WordBeforeCursor | WordAfterCursor | Aktiviere das Wort an der Schreibmarke. 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 Aufzählung gibt die Groß- und Kleinschreibung für die Eingabemethode an.
Konstante | Wert | Beschreibung |
---|---|---|
QVirtualKeyboardInputEngine::TextCase::Lower | 0 | Text in Kleinbuchstaben. |
QVirtualKeyboardInputEngine::TextCase::Upper | 1 | Text in Großbuchstaben. |
Eigenschaft Dokumentation
[read-only]
activeKey : const Qt::Key
Diese Eigenschaft enthält die aktive Taste.
Aktuell 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 aktive Eingabemethode festzulegen oder um zu überwachen, wann sich die aktive Eingabemethode ändert.
Zugriffsfunktionen:
QVirtualKeyboardAbstractInputMethod * | inputMethod() const |
void | setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod) |
Melder-Signal:
void | inputMethodChanged() |
inputMode : InputMode
Diese Eigenschaft enthält den aktuellen Eingabemodus.
Verwenden Sie diese Eigenschaft, um den aktuellen Eingabemodus zu erhalten oder einzustellen. Die InputEngine::inputModes bietet eine Liste der gültigen Eingabemodi für die aktuelle Eingabemethode und das Gebietsschema.
Zugriffsfunktionen:
QVirtualKeyboardInputEngine::InputMode | inputMode() const |
void | setInputMode(QVirtualKeyboardInputEngine::InputMode inputMode) |
Benachrichtigungssignal:
void | inputModeChanged() |
[read-only]
inputModes : const QList<int>
Diese Eigenschaft enthält die verfügbaren Eingabemodi für die aktive Eingabemethode.
Die Liste der verfügbaren Eingabemodi ist abhängig von der Eingabemethode und dem Gebietsschema. Diese Eigenschaft wird aktualisiert, wenn sich eine der beiden Abhängigkeiten ändert.
Zugriffsfunktionen:
QList<int> | inputModes() const |
Benachrichtigungssignal:
void | inputModesChanged() |
[read-only, since QtQuick.VirtualKeyboard 2.0]
patternRecognitionModes : const QList<int>
Diese Eigenschaft enthält die Liste der verfügbaren Mustererkennungsmodi.
Die Liste der verfügbaren Mustererkennungsmodi.
Diese Eigenschaft wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.
Zugriffsfunktionen:
QList<int> | patternRecognitionModes() const |
Benachrichtigungssignal:
[read-only]
previousKey : const Qt::Key
Diese Eigenschaft enthält die zuvor aktive Taste.
Zuvor gedrückte Taste.
Zugriffsfunktionen:
Qt::Key | previousKey() const |
Benachrichtigungssignal:
void | previousKeyChanged(Qt::Key key) |
[read-only]
wordCandidateListModel : QVirtualKeyboardSelectionListModel* const
Listenmodell für die Wortkandidatenliste.
Verwenden Sie diese Eigenschaft, um auf das Listenmodell für die Wortkandidatenliste zuzugreifen.
Zugriffsfunktionen:
QVirtualKeyboardSelectionListModel * | wordCandidateListModel() const |
Benachrichtigungssignal:
void | wordCandidateListModelChanged() |
[read-only]
wordCandidateListVisibleHint : const bool
sichtbarer Hinweis für die Wortkandidatenliste.
Verwenden Sie diese Eigenschaft, um zu prüfen, ob die Wortkandidatenliste in der Benutzeroberfläche sichtbar sein soll.
Zugriffsfunktionen:
bool | wordCandidateListVisibleHint() const |
Benachrichtigungssignal:
void | wordCandidateListVisibleHintChanged() |
Member Function Dokumentation
Qt::Key QVirtualKeyboardInputEngine::activeKey() const
Gibt die derzeit aktive Taste zurück, oder Qt::Key_unknown, wenn keine Taste aktiv ist.
Hinweis: Getter-Funktion für die Eigenschaft activeKey.
[signal]
void QVirtualKeyboardInputEngine::activeKeyChanged(Qt::Key key)
Zeigt an, dass sich die aktive key geändert hat.
Hinweis: Meldesignal für die Eigenschaft activeKey.
QVirtualKeyboardInputContext *QVirtualKeyboardInputEngine::inputContext() const
Gibt die Instanz InputContext
zurück, die mit dem Eingabemotor verbunden ist.
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: Meldesignal für die Eigenschaft inputMethod.
[signal]
void QVirtualKeyboardInputEngine::inputMethodReset()
Wird ausgegeben, wenn die Eingabemethode zurückgesetzt werden muss.
Hinweis: Dieses Signal wird automatisch mit QVirtualKeyboardAbstractInputMethod::reset() und InputMethod::reset() verbunden, wenn die Eingabemethode aktiviert ist.
[signal]
void QVirtualKeyboardInputEngine::inputMethodUpdate()
Hinweis: Dieses Signal wird automatisch mit QVirtualKeyboardAbstractInputMethod::update() und InputMethod::update() verbunden, wenn die Eingangsmethode aktiviert ist.
[signal]
void QVirtualKeyboardInputEngine::inputModeChanged()
Zeigt an, dass sich der Eingabemodus geändert hat.
Hinweis: Meldesignal 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: Meldesignal 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: Benachrichtigungssignal für die Eigenschaft patternRecognitionModes.
Diese Funktion wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.
Qt::Key QVirtualKeyboardInputEngine::previousKey() const
Gibt die zuvor aktive Taste zurück, oder Qt::Key_unknown, wenn keine Taste aktiv war.
Hinweis: Getter-Funktion für die Eigenschaft previousKey.
[signal]
void QVirtualKeyboardInputEngine::previousKeyChanged(Qt::Key key)
Zeigt an, dass sich die vorherige key geändert hat.
Hinweis: Meldesignal für die Eigenschaft previousKey.
[invokable, since QtQuick.VirtualKeyboard 2.0]
bool QVirtualKeyboardInputEngine::reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)
Mit dieser Funktion wird versucht, ein Wort, das sich an der Adresse cursorPosition befindet, neu zu markieren. reselectFlags definiert die Regeln dafür, wie das Wort in Bezug auf die Cursorposition markiert werden soll.
Die Funktion gibt true
zurück, wenn das Wort erfolgreich neu ausgewählt wurde.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Diese Funktion wurde in QtQuick.VirtualKeyboard 2.0 eingeführt.
void QVirtualKeyboardInputEngine::setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)
Legt inputMethod als die 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)
Startet eine Trace-Interaktion mit der Input-Engine.
Die Ablaufverfolgung wird durch traceId eindeutig identifiziert. Die Eingabemaschine weist die ID dem Objekt QVirtualKeyboardTrace zu, wenn die Eingabemethode das Ereignis akzeptiert.
Die patternRecognitionMode gibt den Erkennungsmodus für das Muster an.
Wenn die aktuelle Eingabemethode das Ereignis akzeptiert, gibt sie ein QVirtualKeyboardTrace Objekt zurück, das mit dieser Interaktion verbunden ist. Wenn die Eingabemethode das Ereignis verwirft, gibt sie einen NULL-Wert zurück.
traceCaptureDeviceInfo liefert Informationen über das Quellgerät und traceScreenInfo liefert Informationen über den Bildschirmkontext.
Definitionsgemäß bleibt das Objekt QVirtualKeyboardTrace 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 Meta-Objektsystem und von QML aus 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 dem Eingabegerät.
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 Touch-Ereignisse sollten nicht für etwas anderes verwendet werden).
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
[invokable]
void QVirtualKeyboardInputEngine::virtualKeyCancel()
Stellt den Zustand der aktiven Taste wieder her, ohne das Tastenereignis auszulösen. Diese Methode ist nützlich, wenn der Benutzer die aktuelle Taste verwirft und der Tastenstatus wiederhergestellt werden muss.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
[invokable]
bool QVirtualKeyboardInputEngine::virtualKeyClick(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
Sendet ein Tastenklick-Ereignis für die angegebenen key, text und modifiers. Gibt true
zurück, wenn das Tastenereignis von der Eingabe-Engine akzeptiert wurde.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
[signal]
void QVirtualKeyboardInputEngine::virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat)
Zeigt an, dass das virtuelle key mit den angegebenen text und modifiers angeklickt wurde. Das isAutoRepeat gibt an, ob das Ereignis automatisch wiederholt wird, während die Taste gedrückt 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 key mit den angegebenen text und modifiers gedrückt wurde.
Die Taste key wird als aktive Taste (Abwärtstaste) festgelegt. Das eigentliche Tastenereignis wird ausgelöst, wenn die Taste mit der Methode virtualKeyRelease() losgelassen wird. Das Ereignis des Tastendrucks kann durch den Aufruf von virtualKeyCancel() verworfen werden.
Der Tastendruck löst auch den Timer für die Tastenwiederholung aus, wenn repeat true
ist.
Gibt true
zurück, wenn die Taste von diesem Eingabegerät akzeptiert wurde.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
Siehe auch virtualKeyCancel() und virtualKeyRelease().
[invokable]
bool QVirtualKeyboardInputEngine::virtualKeyRelease(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
Gibt die Taste unter key frei. Die Methode gibt ein Schlüsselereignis für die Eingabemethode aus, wenn das Ereignis nicht durch einen sich wiederholenden Zeitgeber erzeugt wurde. Die Werte text und modifiers werden an die Eingabemethode übergeben.
Gibt true
zurück, wenn der Schlüssel von der Eingabemaschine akzeptiert wurde.
Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.
© 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.