keyPressEvent,QWS_KEYBOARD,QWS_MOUSE_PROTO,嵌入式qt同时支持键盘和触摸屏

【转帖请注明出处:blog.csdn.net/lanmanck】

 

如何让嵌入式的QT程序同时支持触摸屏和键盘呢?我这里有点心得,分享下。

1、触摸屏大家都用tslib,这就不用多说了,配置qt时要加上tslib的命令行,搜索一下,不多说。

2、嵌入式键盘一般是行列扫描,或者芯片自带的keypad接口,不管如何,有2种处理方式,请参考这里:

http://blog.csdn.net/lanmanck/archive/2011/04/01/6295951.aspx

 

我这里使用的是标准键盘驱动接口,qt版本是4.5.2。配置的时候有点讲究,就是-qt-kbd-linuxinput,不过每个版本的qt配置可能会有差异,可以configure -embedded -h查看,这个也会影响到环境变量QWS_KEYBOARD的设置。在4.5.2里面是没有linuxinput的,但是有usb,因此指定方式为:QWS_KEYBOARD = USB:/dev/event0,而不是LinuxInput:/dev/event0,但是QT4.6以后又变成后者了,这个要特别注意!

 

3、当同时使用触摸和键盘时,dev下面会有2个event,这个需要分清楚哪个是tslib,哪个是keypad,可以分别运行测试程序。例如运行tslib的测试程序,如果提示:

selected device is not a touchscreen I understand

这可以把eventx的数字换成另一个,这也是比较快捷的方法。键盘也可以写测试,不过有了tslib的测试程序就不必要了。

 

4、经过上述配置后QT应该就能识别触摸和键盘了,要处理键盘事件,重载keyPressEvent()即可,这个网上很多,也不多说。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值