import QtQuickWindow
{width: 640height: 480visible: truetitle: qsTr("Test KeyEvent")//传递给活动窗口的QQuickWindow//传递给当前活动的Item(focus为true),如没则找子节点中的,都没有则忽略Item{id:item1//focus: trueKeys.onPressed: (event)=>{print("item1 onPressed")}Keys.onReleased: (event)=>{print("item1 onReleased")}Item{id:item2focus:true//如果Item接收事件(accepts 设为true)则停止转发,否则转发给父节点Keys.onPressed: (event)=>{print("item2 onPressed")event.accepted = true //停止转发//处理事件print("event.key = " + event.key)if(event.key === Qt.Key_W){print("W")}else if(event.key === Qt.Key_Left){print("Key_Left")}//组合按键 Ctrl Shift Altif(event.modifiers & Qt.AltModifier){print("Alt")}// Alt + F12if((event.modifiers & Qt.AltModifier) && event.key === Qt.Key_F12){print("Alt + F12")}//Ctrl + ALt + Aif((event.modifiers & Qt.ControlModifier) &&(event.modifiers & Qt.AltModifier) &&event.key === Qt.Key_A){print("Ctrl + ALt + A")}}}}
}
推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家:
零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核)
https://xxetb.xet.tech/s/3Zqhgt