QVirtualKeyboardInputEngine 類

The InputEngine 類提供支持 C++ 和 QML 集成的輸入引擎。 更多...

頭: #include <QVirtualKeyboardInputEngine>
qmake: QT += virtualkeyboard
實例化: InputEngine
繼承: QObject

公共類型

枚舉類 InputMode { Latin, Numeric, Dialable, Pinyin, Cangjie, …, Thai }
枚舉類 PatternRecognitionMode { None, PatternRecognitionDisabled, Handwriting, HandwritingRecoginition }
枚舉類 ReselectFlag { WordBeforeCursor, WordAfterCursor, WordAtCursor }
flags ReselectFlags
枚舉類 TextCase { Lower, Upper }

特性

公共函數

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
bool reselect (int cursorPosition , const QVirtualKeyboardInputEngine::ReselectFlags & reselectFlags )
void setInputMethod (QVirtualKeyboardAbstractInputMethod * inputMethod )
void setInputMode (QVirtualKeyboardInputEngine::InputMode inputMode )
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

信號

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

詳細描述

輸入引擎負責把輸入事件路由到輸入法。實際輸入邏輯由輸入法實現。

輸入引擎還包括默認輸入法,負責默認處理若活動輸入法不處理事件。

成員類型文檔編製

enum class QVirtualKeyboardInputEngine:: InputMode

此枚舉指定輸入法的輸入方式。

常量 描述
QVirtualKeyboardInputEngine::InputMode::Latin 0 用於拉丁文本的默認輸入方式。
QVirtualKeyboardInputEngine::InputMode::Numeric 1 Only numeric input is allowed.
QVirtualKeyboardInputEngine::InputMode::Dialable 2 Only dialable input is allowed.
QVirtualKeyboardInputEngine::InputMode::Pinyin 3 Pinyin input mode for Chinese.
QVirtualKeyboardInputEngine::InputMode::Cangjie 4 Cangjie input mode for Chinese.
QVirtualKeyboardInputEngine::InputMode::Zhuyin 5 Zhuyin input mode for Chinese.
QVirtualKeyboardInputEngine::InputMode::Hangul 6 Hangul input mode for Korean.
QVirtualKeyboardInputEngine::InputMode::Hiragana 7 Hiragana input mode for Japanese.
QVirtualKeyboardInputEngine::InputMode::Katakana 8 Katakana input mode for Japanese.
QVirtualKeyboardInputEngine::InputMode::FullwidthLatin 9 Fullwidth latin input mode for East Asian languages.
QVirtualKeyboardInputEngine::InputMode::Greek 10 希臘語輸入方式。
QVirtualKeyboardInputEngine::InputMode::Cyrillic 11 西裏爾輸入方式。
QVirtualKeyboardInputEngine::InputMode::Arabic 12 阿拉伯語輸入方式。
QVirtualKeyboardInputEngine::InputMode::Hebrew 13 希伯來語輸入方式。
QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting 14 Chinese handwriting input mode.
QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting 15 Japanese handwriting input mode.
QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting 16 Korean handwriting input mode.
QVirtualKeyboardInputEngine::InputMode::Thai 17 泰語輸入方式。

enum class QVirtualKeyboardInputEngine:: PatternRecognitionMode

此枚舉指定輸入法的輸入方式。

常量 描述
QVirtualKeyboardInputEngine::PatternRecognitionMode::None 0 Pattern recognition is not available.
QVirtualKeyboardInputEngine::PatternRecognitionMode::PatternRecognitionDisabled None obsolete Use PatternRecognitionMode::None
QVirtualKeyboardInputEngine::PatternRecognitionMode::Handwriting 1 Pattern recognition mode for handwriting recognition.
QVirtualKeyboardInputEngine::PatternRecognitionMode::HandwritingRecoginition Handwriting obsolete Use PatternRecognitionMode::Handwriting

enum class QVirtualKeyboardInputEngine:: ReselectFlag
flags QVirtualKeyboardInputEngine:: ReselectFlags

此枚舉指定用於單詞重選的規則。

常量 描述
QVirtualKeyboardInputEngine::ReselectFlag::WordBeforeCursor 0x1 Activate the word before the cursor. When this flag is used exclusively, the word must end exactly at the cursor.
QVirtualKeyboardInputEngine::ReselectFlag::WordAfterCursor 0x2 Activate the word after the cursor. When this flag is used exclusively, the word must start exactly at the cursor.
QVirtualKeyboardInputEngine::ReselectFlag::WordAtCursor WordBeforeCursor | WordAfterCursor Activate the word at the cursor. This flag is a combination of the above flags with the exception that the word cannot start or stop at the cursor.

ReselectFlags 類型是 typedef 對於 QFlags <ReselectFlag>。它存儲 ReselectFlag 值的 OR 組閤。

enum class QVirtualKeyboardInputEngine:: TextCase

此枚舉指定用於輸入法的文本大小寫。

常量 描述
QVirtualKeyboardInputEngine::TextCase::Lower 0 小寫文本。
QVirtualKeyboardInputEngine::TextCase::Upper 1 大寫文本。

特性文檔編製

activeKey : const Qt::Key

此特性保持活動鍵。

目前按下的鍵。

訪問函數:

Qt::Key activeKey () const

通知程序信號:

void activeKeyChanged (Qt::Key key )

inputMethod : QVirtualKeyboardAbstractInputMethod *

此特性保持活動輸入法。

Use this property to set active the input method, or to monitor when the active input method changes.

訪問函數:

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

通知程序信號:

void inputMethodChanged ()

inputMode : InputMode

此特性保持當前輸入方式。

Use this property to get or set the current input mode. The InputEngine::inputModes provides list of valid input modes for current input method and locale.

訪問函數:

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

通知程序信號:

void inputModeChanged ()

inputModes : const QList < int >

This property holds the available input modes for active input method.

The list of available input modes is dependent on the input method and locale. This property is updated when either of the dependencies changes.

訪問函數:

QList<int> inputModes () const

通知程序信號:

void inputModesChanged ()

patternRecognitionModes : const QList < int >

This property holds the list of available pattern recognition modes.

The list of available pattern recognition modes.

該特性在 QtQuick.VirtualKeyboard 2.0 引入。

訪問函數:

QList<int> patternRecognitionModes () const

通知程序信號:

void patternRecognitionModesChanged ()

previousKey : const Qt::Key

此特性保持先前活動的鍵。

先前按下的鍵。

訪問函數:

Qt::Key previousKey () const

通知程序信號:

void previousKeyChanged (Qt::Key key )

wordCandidateListModel : QVirtualKeyboardSelectionListModel * const

用於單詞候選列錶的列錶模型。

Use this property to access the list model for the word candidate list.

訪問函數:

QVirtualKeyboardSelectionListModel * wordCandidateListModel () const

通知程序信號:

void wordCandidateListModelChanged ()

wordCandidateListVisibleHint : const bool

用於單詞候選列錶的可見提示。

Use this property to check if the word candidate list should be visible in the UI.

訪問函數:

bool wordCandidateListVisibleHint () const

通知程序信號:

void wordCandidateListVisibleHintChanged ()

成員函數文檔編製

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

指示活動 key 已改變。

注意: 通知程序信號對於特性 activeKey .

[signal] void QVirtualKeyboardInputEngine:: inputMethodChanged ()

指示輸入法已改變。

注意: 通知程序信號對於特性 inputMethod .

[signal] void QVirtualKeyboardInputEngine:: inputMethodReset ()

發射當需要重置輸入法時。

注意: 此信號會被自動連接到 QVirtualKeyboardAbstractInputMethod::reset () 和 InputMethod::reset () when the input method is activated.

[signal] void QVirtualKeyboardInputEngine:: inputMethodUpdate ()

注意: 此信號會被自動連接到 QVirtualKeyboardAbstractInputMethod::update () 和 InputMethod::update () when the input method is activated.

[signal] void QVirtualKeyboardInputEngine:: inputModeChanged ()

指示輸入方式已改變。

注意: 通知程序信號對於特性 inputMode .

[signal] void QVirtualKeyboardInputEngine:: inputModesChanged ()

指示可用輸入方式已改變。

注意: 通知程序信號對於特性 inputModes .

[signal] void QVirtualKeyboardInputEngine:: patternRecognitionModesChanged ()

Indicates that the available pattern recognition modes have changed.

注意: 通知程序信號對於特性 patternRecognitionModes .

該函數在 QtQuick.VirtualKeyboard 2.0 引入。

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

指示先前 key 已改變。

注意: 通知程序信號對於特性 previousKey .

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

指示虛擬 key was clicked with the given text and modifiers isAutoRepeat indicates if the event is automatically repeated while the key is being pressed. This signal is emitted after the input method has processed the key event.

Qt::Key QVirtualKeyboardInputEngine:: activeKey () const

返迴目前活動的鍵,或 Qt::Key_unknown 若沒有活動鍵。

注意: getter 函數對於特性 activeKey。

QVirtualKeyboardInputContext *QVirtualKeyboardInputEngine:: inputContext () const

返迴 InputContext 實例有關聯輸入引擎。

QVirtualKeyboardAbstractInputMethod *QVirtualKeyboardInputEngine:: inputMethod () const

返迴活動輸入法。

注意: getter 函數對於特性 inputMethod。

另請參閱 setInputMethod ().

QList < int > QVirtualKeyboardInputEngine:: inputModes () const

返迴可用輸入方式的列錶。

注意: getter 函數對於特性 inputModes。

QList < int > QVirtualKeyboardInputEngine:: patternRecognitionModes () const

返迴支持模式識彆方式的列錶。

注意: getter 函數對於特性 patternRecognitionModes。

Qt::Key QVirtualKeyboardInputEngine:: previousKey () const

返迴先前活動的鍵,或 Qt::Key_unknown 若沒有活動鍵。

注意: getter 函數對於特性 previousKey。

bool QVirtualKeyboardInputEngine:: reselect ( int cursorPosition , const QVirtualKeyboardInputEngine::ReselectFlags & reselectFlags )

此函數試圖重選的單詞位於 cursorPosition reselectFlags 定義應如何選擇光標位置相關單詞的規則。

函數返迴 true 若單詞被成功重選。

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .

該函數在 QtQuick.VirtualKeyboard 2.0 引入。

void QVirtualKeyboardInputEngine:: setInputMethod ( QVirtualKeyboardAbstractInputMethod * inputMethod )

設置 inputMethod 作為活動輸入法。

注意: setter 函數對於特性 inputMethod .

另請參閱 inputMethod ().

QVirtualKeyboardTrace *QVirtualKeyboardInputEngine:: traceBegin ( int traceId , QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode , const QVariantMap & traceCaptureDeviceInfo , const QVariantMap & traceScreenInfo )

采用輸入引擎開始跟蹤交互。

The trace is uniquely identified by the traceId . The input engine will assign the id to the QVirtualKeyboardTrace object if the input method accepts the event.

The patternRecognitionMode specifies the recognition mode used for the pattern.

If the current input method accepts the event it returns a QVirtualKeyboardTrace object associated with this interaction. If the input method discards the event, it returns a NULL value.

The traceCaptureDeviceInfo 提供源設備的有關信息和 traceScreenInfo 提供屏幕上下文的有關信息。

By definition, the QVirtualKeyboardTrace object remains valid until the traceEnd () method is called.

The trace interaction is ended by calling the traceEnd () 方法。

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .

該函數在 QtQuick.VirtualKeyboard 2.0 引入。

bool QVirtualKeyboardInputEngine:: traceEnd ( QVirtualKeyboardTrace * trace )

Ends the trace interaction with the input engine.

The trace object may be discarded at any point after calling this function.

The function returns true if the trace interaction was accepted (i.e. the touch events should not be used for anything else).

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .

void QVirtualKeyboardInputEngine:: virtualKeyCancel ()

Reverts the active key state without emitting the key event. This method is useful when the user discards the current key and the key state needs to be restored.

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .

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

發射鍵點擊事件為給定 key , text and modifiers 。返迴 true 若輸入引擎接受鍵事件。

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .

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

Called by the keyboard layer to indicate that key was pressed, with the given text and modifiers .

The key is set as an active key (down key). The actual key event is triggered when the key is released by the virtualKeyRelease () method. The key press event can be discarded by calling virtualKeyCancel ().

The key press also initiates the key repeat timer if repeat is true .

返迴 true 若此輸入引擎接受鍵。

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .

另請參閱 virtualKeyCancel () 和 virtualKeyRelease ().

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

釋放鍵如 key . The method emits a key event for the input method if the event has not been generated by a repeating timer. The text and modifiers are passed to the input method.

返迴 true 若輸入引擎接受鍵。

注意: 此函數可以被援引,通過元對象係統和從 QML。見 Q_INVOKABLE .