标题:qml手动发送键盘事件
作者:keris_huang
日期:2019-12-02 09:42
内容:
qml中,如何做到可以像qwidget中的sendEvent那样,手动的发送键盘事件给某个控件,有没有大佬遇到过,或者解决过此种问题,请指教!
#1 [yhgaven 12-02 11:37]
比如键盘输入密码,工号等#号结束
Rectangle {
id: mainPage
width: 1280
height: 768
property string jobNumber;
property int listCount: 0
Component.onCompleted: {
}
focus: true
Keys.onPressed: {
event.accepted = true;//设置成了事件已接收,防止向上层传递
var isNumber = event.key >= 0x30 && event.key
#2 回 yhgaven 的帖子 [keris_huang 12-02 13:27]
yhgaven:比如键盘输入密码,工号等#号结束
Rectangle {
id: mainPage
width: 1280
height: 768
....... (2019-12-02 11:37)
大佬,你这个逻辑是监听用户的输入键盘事件,可能我描述的不够清楚!我其实是想在qml中,能实现像QWidget中的sendEvent函数的功能,比如:
qwidget是这样 QKeyEvent myEvent(QEvent::KeyPress,Qt::Key_Up(键盘事件,不用用户手动按,自动就产生的一个键盘事件),Qt::NoModifier);
qApp->sendEvent(ui->MyWidget,&myEvent);
我的诉求:在qml文件中,定义一个键盘事件,然后,在代码中,手动发送这个事件给某个控件
#3 [linker 12-02 13:33]
用win api,给你个链接你参考吧
https://blog.csdn.net/everlasting_20141622/article/details/52233642