您的位置:首页 > 编程语言 > Qt开发

tslib和QT库连用的问题

2017-12-29 17:08 429 查看
问题:近期将 机器中的 qt5.5的库换成了 qt5.6的库,出现触摸点击同一个点出现不一样的坐标问题,导致在QT应用层会出现滑动的动作。

1、从QT应用层 到QT 源码库--》tslib读数接口 --》驱动接口。查询整个数据流,发现,在使用QT源码调用tslib的接口读取坐标的时候,会出现坐标变化的情况,在QT源码的qtslib.c文件中,在readMouseData函数中查看数据发生变化,而后跟入到tslib的源码中,在ts_read.c的ts_read函数中打印坐标值,发现在该函数中出现了坐标不一样的问题。

2、在运行tslib的bin文件,比如ts_print的时候,点击同一个点,不会出现坐标偏移的情况,所以怀疑是QT和TSLIB配合出现了问题。

解决:项目进度:先放弃tslib 方案。在查看QT源码的时候,发现QT本身有一个touchevent用来管理触摸事件,在使用tslib的时候,是将其模拟成一个鼠标事件上报。改用QT自带的touch-event。需要在.configure 中添加-evdev \配置。 并且修改机器中/etc/profile文件。QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=/dev/input/event0 export QT_QPA_GENERIC_PLUGINS=evdevtouch:/dev/input/event0,evdevmouse:/dev/input/event1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: