QML类型说明-KeyEvent

KeyEvent

Import Statement:   import QtQuick 2.2

 

Properties

accepted :bool

count : int

isAutoRepeat: bool

key : int

modifiers :int

nativeScanCode: quint32

text :string

 

Methods

boolmatches(StandardKey key)

 

DetailedDescription

例如当Enter按键被按下时,组件的状态属性被改变:

Item {

    focus: true

    Keys.onPressed: { if (event.key ==Qt.Key_Enter) state = 'ShowDetails'; }

}

 

PropertyDocumentation

accepted :bool

为真则按键事件被接收,不会传播给组件的父。一般来说,如果组件响应键盘事件,事件应该被接收,这样组件的祖先就不会响应相同的事件。

 

count : int

参与这次事件的按键的数目。如果KeyEvent::text不是空的,它是简单的字符串的长度。

 

isAutoRepeat: bool

事件是否来自自动重复键。

 

key : int

被按下或被释放的按键的编码。键盘编码的列表看Qt.Key。注意这个函数不区分字母的大小写。为了区分大小写,用text()函数(返回按键生成的Unicode编码的文本)。key为0或Qt.Key_Unknown意味着时间不是已知的按键的结果。例如,它可以是组合序列的结果,一个键盘宏或按键事件的压缩。

 

modifiers :int

事件发生之前存在的键盘修改标志,它是一个位的组合:

Qt.NoModifier- 没有修改键被按下。

Qt.ShiftModifier- Shift键被按下。

Qt.ControlModifier- Ctrl键被按下。

Qt.AltModifier- Alt键被按下。

Qt.MetaModifier- Meta键被按下。

Qt.KeypadModifier- 键盘按钮被按下。

For example,to react to a Shift key + Enter key combination:

例如,响应Shift键加Enter键的组合:

Item {

    focus: true

    Keys.onPressed: {

        if ((event.key == Qt.Key_Enter)&& (event.modifiers & Qt.ShiftModifier))

            doSomething();

    }

}

 

nativeScanCode: quint32

这个属性包含本地的被按下的按键的扫描码。它来自于QKeyEvent。

 

text :string

按键生成的Unicode文本。当修改键,诸如Shift、Control、Alt和Meta键被按下或释放时,文本返回空字符。在这些情况下,key将包含有效值。

 

MethodDocumentation

boolmatches(StandardKey key)

如果按键事件和给的标准按键匹配,返回真,否则返回假。

Item {

    focus: true

    Keys.onPressed: {

        if (event.matches(StandardKey.Undo))

            myModel.undo();

        else if (event.matches(StandardKey.Redo))

            myModel.redo();

    }

}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值