作者rodmaner (低调一点的好)
看板LinuxDev
标题Re: [问题] QT Embedded 与多点触碰萤幕如何结合的 …
时间Tue Jul 3 14:13:35 2012
最近也在看这方面的应用
我的kernel版本为2.6.37
Qt为4.7.2
电容式touch screen支援二点
实做下来的感觉是 应用tslib如原po所说
就是当成滑鼠来应用
因为当我执行Qt touch的fingerpaint范例时
并不会实际在萤幕上显示手指画过的轨迹
而是移动滑鼠游标而已
实际从code下去把值print出来看,得到的也的确是滑鼠的事件
所以该范例当然也不会有动作
想问的是 若我想要单纯得到touch event 而不是 mouse event的话
就不该用tslib? 还是要再另外设定?
这部分google了好久 都没有找到答案(不知道是不是方向错误 XD)
请有这方面经验的大大 也给我一点建议
谢谢
※ 引述《askacis (ASKA)》之铭言:
在过去电阻式单点触碰的时代,想要在QT使用Touch Screen
无非是使用环境变数QWS_MOUSE_PROTO来告诉QT要怎麽驱动
(透过tslib或是qt内建的plug-in)
EX.
export QWS_MOUSE_PROTO="linuxinput:/dev/input/event0"
export QWS_MOUSE_PROTO="tslib:/dev/input/event0"
说穿了其实也就是把他当作滑鼠装置来使用。
而现在电容式多点触碰萤幕正当红,不但kernel有一套新的
multi-touch protocol支援多点,QT4.6开始也有支援多点触碰
class QTouchEvent,但是小弟有一点不明白的是在QT下我们要怎麽
驱动支援标准多点protocol的触碰萤幕,是继续沿用QWS_MOUSE_PROTO
的方式自己写plug-in来驱动或是有其他更方便的步骤呢?
小弟目前多点触碰萤幕还是回单点的相关资料,只是第二点利用
ABS_RX,ABS_RY传递座标值给user space,同时第二点也模拟成BTN_RIGHT
;在这样的情况下,我在QT里利用滑鼠事件转成QTouchEvent再send event
给自己,这样做起来虽然可以套用QT新的class,但是写起来还是有其限制
(例如在移动的时候就没办法分出是哪一个点在移动等等)
先在此感谢大家的解答:)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.244.105.125
※ 编辑: askacis 来自: 60.244.105.125 (08/10 18:15)
※ 编辑: askacis 来自: 219.87.142.254 (08/10 18:21)
2F:→ elpam:Qt4.7之後应该就有支援gesture了 08/11 15:12
3F:→ askacis:感谢一楼,看起来还是要自己写个plug-in~ 08/11 23:00
4F:→ askacis:有支援手势没错,但第二点移动侦测不出来,手势也出不来XD 08/11 23:02
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.34.245.165
5F:推 askacis:先拿到mouse event然後转成touch event再发给自己 07/03 23:43