QVirtualKeyboardAbstractInputMethod 类
输入方法的基本类。 更多...
头文件 | #include <QVirtualKeyboardAbstractInputMethod> |
CMake | find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard) target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard) |
qmake | QT += virtualkeyboard |
继承 | QObject |
公共函数
QVirtualKeyboardAbstractInputMethod(QObject *parent = nullptr) | |
virtual | ~QVirtualKeyboardAbstractInputMethod() |
(since QtQuick.VirtualKeyboard 2.4) virtual bool | clickPreeditText(int cursorPosition) |
QVirtualKeyboardInputContext * | inputContext() const |
QVirtualKeyboardInputEngine * | inputEngine() const |
virtual QList<QVirtualKeyboardInputEngine::InputMode> | inputModes(const QString &locale) = 0 |
virtual bool | keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers) = 0 |
(since QtQuick.VirtualKeyboard 2.0) virtual QList<QVirtualKeyboardInputEngine::PatternRecognitionMode> | patternRecognitionModes() const |
(since QtQuick.VirtualKeyboard 2.0) virtual bool | reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags) |
virtual QVariant | selectionListData(QVirtualKeyboardSelectionListModel::Type type, int index, QVirtualKeyboardSelectionListModel::Role role) |
virtual int | selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type) |
virtual void | selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type type, int index) |
virtual bool | selectionListRemoveItem(QVirtualKeyboardSelectionListModel::Type type, int index) |
virtual QList<QVirtualKeyboardSelectionListModel::Type> | selectionLists() |
virtual bool | setInputMode(const QString &locale, QVirtualKeyboardInputEngine::InputMode inputMode) = 0 |
virtual bool | setTextCase(QVirtualKeyboardInputEngine::TextCase textCase) = 0 |
(since QtQuick.VirtualKeyboard 2.0) virtual QVirtualKeyboardTrace * | traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo) |
(since QtQuick.VirtualKeyboard 2.0) virtual bool | traceEnd(QVirtualKeyboardTrace *trace) |
公共槽函数
(自QtQuick.VirtualKeyboard 6.1以来) virtual void | clearInputMode() |
virtual void | reset() |
virtual void | update() |
信号
void | selectionListActiveItemChanged(QVirtualKeyboardSelectionListModel::Type type, int index) |
void | selectionListChanged(QVirtualKeyboardSelectionListModel::Type type) |
(自QtQuick.VirtualKeyboard 2.2以来) void | selectionListsChanged() |
成员函数文档
[显式]
QVirtualKeyboardAbstractInputMethod::QVirtualKeyboardAbstractInputMethod(QObject *parent = nullptr)
使用父对象构建一个输入法。
[虚拟 noexcept]
QVirtualKeyboardAbstractInputMethod::~QVirtualKeyboardAbstractInputMethod()
销毁输入法并释放所有分配的资源。
[虚拟槽,自QtQuick.VirtualKeyboard 6.1以来]
void QVirtualKeyboardAbstractInputMethod::clearInputMode()
清除输入模式。
此方法在虚拟键盘用另一个输入法替换当前输入法时被调用。它应该清除由 setInputMode() 方法执行的各类操作,例如,将信号处理程序与虚拟键盘断开连接或释放资源。
可以通过调用 setInputMode() 来重新激活输入模式。但是,请注意,对 setInputMethod() 和 clearInputMethod() 的调用不平衡。因此,例如,setInputMethod() 可能会被多次调用,而没有匹配的 clearInputMethod() 调用。
默认实现没有任何操作。
此功能是在QtQuick.VirtualKeyboard 6.1中引入的。
[虚拟,自QtQuick.VirtualKeyboard 2.4以来]
bool QVirtualKeyboardAbstractInputMethod::clickPreeditText(int cursorPosition)
用户在 游标位置 的预编辑文本上点击时调用此函数。
如果函数处理了事件,则应返回 true
。否则,输入将回退到 reselect() 以进行进一步处理。
此功能是在QtQuick.VirtualKeyboard 2.4中引入的。
QVirtualKeyboardInputContext *QVirtualKeyboardAbstractInputMethod::inputContext() const
返回与输入法关联的输入上下文。如果输入法不是活动状态,此方法返回 NULL
。
QVirtualKeyboardInputEngine *QVirtualKeyboardAbstractInputMethod::inputEngine() const
获取与输入法关联的输入引擎。如果输入法未激活,此方法返回 NULL
。
[纯虚函数]
QList<QVirtualKeyboardInputEngine::InputMode> QVirtualKeyboardAbstractInputMethod::inputModes(const QString &locale)
返回指定区域设置的输入模式列表。
[纯虚函数]
bool QVirtualKeyboardAbstractInputMethod::keyEvent(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
此方法用于处理输入引擎生成的键事件。
key 参数指定要处理的按键代码。按键代码不区分大小写。 text 参数包含该键的 Unicode 文本。 modifiers 参数包含应用于键的按键修饰符。
如果成功处理键事件,则此方法返回 true
。如果返回值是 false
,则将键事件重定向到默认输入法进行进一步处理。
[虚拟函数,自 QtQuick.VirtualKeyboard 2.0 起存在]
QList<QVirtualKeyboardInputEngine::PatternRecognitionMode> QVirtualKeyboardAbstractInputMethod::patternRecognitionModes() const
返回受支持的模式识别模式列表。
输入引擎调用此方法来查询受支持的模式识别模式列表。
此函数自 QtQuick.VirtualKeyboard 2.0 版本开始存在。
[虚拟函数,自 QtQuick.VirtualKeyboard 2.0 起存在]
bool QVirtualKeyboardAbstractInputMethod::reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)
此函数尝试在 cursorPosition 位置重新选择一个单词。 reselectFlags 定义单词相对于光标位置的选中规则。
如果成功重新选择单词,则该函数返回 true
。
此函数自 QtQuick.VirtualKeyboard 2.0 版本开始存在。
[虚拟槽]
void QVirtualKeyboardAbstractInputMethod::reset()
当输入法需要重置时,输入引擎调用此方法。输入法必须只重置其内部状态。与 update() 方法的不同之处在于 reset() 只修改输入法状态,即它必须不修改输入上下文。
[信号]
void QVirtualKeyboardAbstractInputMethod::selectionListActiveItemChanged(QVirtualKeyboardSelectionListModel::Type type, int index)
输入法在当前 index 在 type 指定的选择列表中发生变化时发射此信号。
[信号]
void QVirtualKeyboardAbstractInputMethod::selectionListChanged(QVirtualKeyboardSelectionListModel::Type type)
当选择列表内容发生变化时,输入法发出此信号。参数type指定了哪个选择列表已更改。
[虚函数]
QVariant QVirtualKeyboardAbstractInputMethod::selectionListData(QVirtualKeyboardSelectionListModel::Type type, int index, QVirtualKeyboardSelectionListModel::Role role)
返回由type指定的选择列表项的数据。参数role指定了请求的数据类型。参数index是列表中的零基索引。
[虚函数]
int QVirtualKeyboardAbstractInputMethod::selectionListItemCount(QVirtualKeyboardSelectionListModel::Type type)
返回由type指定的选择列表的项数。
[虚函数]
void QVirtualKeyboardAbstractInputMethod::selectionListItemSelected(QVirtualKeyboardSelectionListModel::Type type, int index)
当用户在index处选择了项时调用此方法。选择列表由type参数标识。
[虚函数]
bool QVirtualKeyboardAbstractInputMethod::selectionListRemoveItem(QVirtualKeyboardSelectionListModel::Type type, int index)
当需要从字典中删除index处的项时调用此方法。选择列表由type参数标识。如果单词成功删除,函数返回true
。
[虚函数]
QList<QVirtualKeyboardSelectionListModel::Type> QVirtualKeyboardAbstractInputMethod::selectionLists()
返回此输入法使用的选中列表列表。
当输入法被激活时,每次输入法提示更新时,输入引擎会调用此方法。输入法可以通过返回所需的选择列表类型来预留选择列表。
输入法可以随时通过发出selectionListsChanged()信号请求输入引擎更新选择列表。此信号将触发对此方法的调用,允许输入法更新选择列表类型。
[信号,自 QtQuick.VirtualKeyboard 2.2 起使用]
void QVirtualKeyboardAbstractInputMethod::selectionListsChanged()
当选择列表类型发生变化时,输入法发出此信号。此信号将触发对selectionLists()方法的调用,允许输入法更新选择列表类型。
此函数是在 QtQuick.VirtualKeyboard 2.2 中引入的。
[纯虚函数]
bool QVirtualKeyboardAbstractInputMethod::setInputMode(const QString &locale, QVirtualKeyboardInputEngine::InputMode inputMode)
为该输入法设置inputMode和locale。如果成功则返回true
。
[纯虚函数]
bool QVirtualKeyboardAbstractInputMethod::setTextCase(QVirtualKeyboardInputEngine::TextCase textCase)
更新该输入法的textCase。如果成功则方法返回true
。
[虚函数,自QtQuick.VirtualKeyboard 2.0版本起]
QVirtualKeyboardTrace *QVirtualKeyboardAbstractInputMethod::traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)
当以指定的patternRecognitionMode开始跟踪交互时调用此方法。跟踪通过traceId唯一标识。通过traceCaptureDeviceInfo提供有关源设备的信息,而通过traceScreenInfo提供有关屏幕上下文的信息。
如果输入法接受事件并希望捕获跟踪输入,则必须返回一个新的QVirtualKeyboardTrace对象。此对象必须在调用traceEnd()方法之前保持有效。如果在屏幕上绘制了QVirtualKeyboardTrace,则它将保持在那里,直到QVirtualKeyboardTrace对象被销毁。
此函数自 QtQuick.VirtualKeyboard 2.0 版本开始存在。
[虚函数,自QtQuick.VirtualKeyboard 2.0版本起]
bool QVirtualKeyboardAbstractInputMethod::traceEnd(QVirtualKeyboardTrace *trace)
当跟踪交互结束时调用此方法。输入法应在调用此函数后的一些时间点销毁trace对象。有关如何访问收集到的数据的说明,请参阅输入法跟踪API。
如果接受跟踪交互,则方法返回true
。
此函数自 QtQuick.VirtualKeyboard 2.0 版本开始存在。
[虚槽函数]
void QVirtualKeyboardAbstractInputMethod::update()
当输入法需要更新时,输入引擎会调用此方法。输入法必须关闭当前的前编辑文本,并将内部状态恢复到默认状态。
© 2024 Qt公司有限公司。包含在此处的文档贡献的版权属于各自的拥有者。本提供的文档是根据自由软件基金会发布的GNU自由文档许可证版本1.3的条款授权的。Qt和相应的标志是Qt公司在芬兰和/或全球其他国家的商标。所有其他商标均为其各自所有者的财产。