这篇文章主要为大家展示了“如何将qt4的触摸功能移植到应用程序helloworld中”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何将qt4的触摸功能移植到应用程序helloworld中”这篇文章吧。
如何将 qt4 的触摸功能移植到应用程序 helloworld 中。
11.3.2.1 鼠标和触摸
如下图,打开“etc/init.d/rcS”文件,将最后一行修改为“/bin/qt4_shell &”,这样
在开机之后系统会运行 qt4.shell 程序。修改完成之后,保存退出。
然后使用命令“#cp -r bin/qt4 bin/qt4.shell”将“bin/qt4”文件拷贝生成
“bin/qt4.shell”文件,如下图所示。
然后打开“bin/qt4.shell”文件,如下图所示。
代码“export TSLIB_ROOT=/usr/local/tslib”等调用了触摸和鼠标驱动。
代码“export QTDIR=/opt/qt-4.7.1/”调用了 QtE 的库。
如下图所示,这一段关于鼠标的驱动已经被注释掉了。
将上图中与触摸鼠标相关代码修改为下面的代码。
if [! -c /dev/input/event2 ]; then
export QWS_MOUSE_PROTO='Tslib:/dev/input/event2'
#if [ -e /etc/pointercal -a ! -s /etc/pointercal ] ; then
if [ -e /etc/pointercal ] ; then
fsize=$(/bin/ls -al /etc/pointercal | cut -d' ' -f 23)
echo $fsize
#if [ -s /etc/pointercal ]; then
if [ $fsize -ge "1" ]; then
echo "/etc/pointercal is exit"
else
echo "/etc/pointercal is empty"
rm /etc/pointercal
/usr/local/tslib/bin/ts_calibrate
fi
else
echo "/etc/pointercal not found"
/usr/local/tslib/bin/ts_calibrate
fi
else
export QWS_MOUSE_PROTO="MouseMan:/dev/input/mice"
#>/etc/pointercal
fi
#export QWS_MOUSE_PROTO="Tslib{TSLIB_TSDEVICE}"
#/usr/local/tslib/bin/ts_calibrate
上面代码第一行,有“!”则支持鼠标;触摸应该不能正常使用。
如果去掉“!”则支持触摸。需要先校准,使用上面这段代码只用校准一次即可,不用每
次都校验。
另外如果用户在第一次校准的时候,没有依次点击“十字框”,则触摸文件可能有问题,
那么可以参考 7.3.3 小节,删除掉“/etc/point*”文件,重启开发板再次校准。
修改这段代码之后,最好删除一下“/etc/point*”文件。例如,如果用户刚开始使用的
是触摸,然后改成鼠标控制,因为已经存在“/etc/point*”文件,所以会让人感觉鼠标可以
使用,触摸能够使用但是有问题,这个时候删除“/etc/point*”文件重启即可。
11.3.2.2 字体
如下图所示,接着找到控制字体的参数。
把
“export QWS_DISPLAY=Transformed:Rot0”
修改为:
“export QWS_DISPLAY=Transformed:Rot90”
然后重新启动开发板,开发板起来后会发现屏幕产生了 90 度旋转。
1.3.2.4 修改默认启动程序
如下图所示,进入最后一行,红色框默认会启动 QtE 自带的例程,这里修改为
“./bin/helloworld -qws”(其中 helloworld 程序是 11.2 小节生成的,放到/bin 目录
下),红色框中的代码记得注释或者删除。
以上是“如何将qt4的触摸功能移植到应用程序helloworld中”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。