当一个键被按或者释放的时候,一个Key事件就被创建并且传递给当前 QML中焦点Item。
1. 按键处理概述
当用户按或者释放一个按键的时候,如下将发生:
- QT 接受到按键动作,并且产生一个按键事件
- 如果QT 包含有 QDeclarativeView
Widget 有焦点, 那么key事件传递给他, 否则例行Key处理继续 - 如果没有一个Item有active focus, 那么key事件被忽略, 例行Key处理继续
- 如果一个active focus的item 接受了key 事件, 那么Key事件的“遗传”停止。否则, Key事件将冒泡一样递归的往父Item传递, 直到事件被接收或者到根Item
- 如果根Item到达,按键事件将被忽略, 例行按键处理继续
2. 获取focus以及focus scope