我用Qt Creator 3.3.1创建了一个Qt应用程序,使用Qt embedded 4.8.6作为Cortex A5。它运行在嵌入了Linux和触摸屏的电路板上。 文件系统是使用Buildroot 2015.08创建的。 我正在使用ts_calibrate校准的电阻式触摸屏。 Qt应用程序的工作原理,但我经常得到错误的坐标。例如,当我按下一个按钮时,有时程序会将与触摸屏另一个点相关的坐标显示出来,表明按下的按钮无法正常工作。Qt应用程序中的错误坐标
我的Qt环境变量有:
export TSLIB_CALIBFILE='/etc/pointercal'
export TSLIB_CONFFILE='/etc/ts.conf'
export TSLIB_PLUGINDIR='/usr/lib/ts'
export TSLIB_TSDEVICE=`cat /etc/ts.dev 2>/dev/null`
export QWS_DISPLAY=LinuxFB:mmWidth=800:mmHeight=480
export QWS_MOUSE_PROTO=Tslib:/dev/input/event0
如果我尝试使用其他Qt应用程序(例如使用Buildroot里面创建了Qt演示),我得到了同样的问题。 是Qt 4.8.6还是什么的? 任何人都可以帮助我吗?谢谢
尝试使用提供tslib的公用事业:'ts_test', 'ts_print'和'ts_print_raw'。如果他们有同样的问题,那么与Qt无关。 –
我同意卢卡的观点,这很可能是触摸屏本身的一个问题 - 无论是在驱动程序中,还是(更可能)在屏幕边缘发生错误解耦。整个输入堆栈(Linux驱动程序,tslib,Qt)只不过是触摸屏控制器给出坐标的线性变换。 IOW,如果你两次触摸相同的屏幕区域,并给出两个不同的坐标,这是一个硬件问题。 – Arnout