如果为图的KeyPressFcn
属性分配了回调函数,则在matlab.ui.eventdata.KeyData
,Character
的事件数据(Modifier
)结构中可以使用按下的键。 }和Key
字段。
按 Shift + c 将返回具有以下属性的KeyData
结构:
Character: 'C'
Modifier: {'shift'}
Key: 'c'
对于 Alt + c ,但这个角色是不可思议的:
Character: ''
Modifier: {'alt'}
Key: 'c'
角色的数值为[239, 191, 167]
(unicode2native(event_data.Character,'UTF-8')
)。
同样, Ctrl + c 会返回一个未知字符
Character: ''
Modifier: {'control'}
Key: 'c'
字符(unicode2native
)的数值为3
。
虽然密钥始终可以通过Key
结构的KeyData
字段获得,但是通过转换返回值,可以通过某种方式从Character
字段检索密钥吗?
答案 0 :(得分:1)
我会说不,基于documentation:
字符:按下后显示的字符 钥匙或钥匙。角色可以是空的或不可打印的。
关键:关键 按下,由键上的(小写)标签标识,或a 描述性词语。
Alt+c
和Ctrl+c
不会在屏幕上打印任何内容,因此Character
毫无意义。您应该使用Key
。