I.MX6 linux Qt 同时支持Touch、mouse
/*****************************************************************************
* I.MX6 linux Qt 同时支持Touch、mouse
* 声明:
* 在Qt上,有时候当没有Touch的时候,我们会希望鼠标还是能够使用的,于是乎
* 这又变成了一个看上去必须的需求了,所以这也就变成了一个需要解决的问题,当然
* 这又解决Touch存在还是不存在的问题,以及如何跟mouse共存的问题。
*
* 2016-1-13 深圳 南山平山村 曾剑锋
****************************************************************************/ 一、参考文档:
. Qt移植对USB鼠标键盘、触摸屏的支持
http://blog.csdn.net/sno_guo/article/details/16897577
. QT 同时支持鼠标和触摸屏
http://www.cnblogs.com/leaven/archive/2010/11/24/1886774.html 二、/etc/profile修改:
......
# 计数值的上限,仅仅是为了方便修改,不用到代码里去修改这个值
limitForWaitTime=
# 循环计数
waitTimeCount=
while [ -z $touchEvent ]
do
inputCheckLine=`cat /proc/bus/input/devices | grep -n "Vendor=0eef" | grep "Product=0020 Version=0001"| awk -F: '{print $1}'`
touchEvent=`sed -n "$((${inputCheckLine}+5))p" /proc/bus/input/devices | grep -o "event."`
echo "please hang up USB TOUCH !"
waitTimeCount=$((waitTimeCount+))
if [ $waitTimeCount -gt $limitForWaitTime ]; then
break
fi
usleep
done ...... export TSLIB_ROOT=/usr/local/tslib-instal
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_FBDEVICE=/dev/fb0
export PATH=/usr/local/tslib-instal:$PATH
export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.8.-arm/lib
export QT_QWS_FONTDIR=/usr/local/Trolltech/QtEmbedded-4.8.-arm/lib/fonts # 注释掉的内容,会导致如下错误:
# -sh: [: argument expected
#if [ -f /etc/pointercal -o -z $touchEvent ];then
if [ -f /etc/pointercal ] || [ -z $touchEvent ];then
echo "MXS touchscreen have calibrate!"
else
# 这里一定不能用注释的这两行,否则会导致ts_calibrate闪退
#export TSLIB_TSDEVICE="tslib:/dev/input/${touchEvent}"
#export QWS_MOUSE_PROTO="tslib:/dev/input/${touchEvent}"
export TSLIB_TSDEVICE=/dev/input/${touchEvent}
export QWS_MOUSE_PROTO=/dev/input/${touchEvent}
/usr/local/tslib-instal/bin/ts_calibrate
sync
fi # 注释掉的内容,如果系统运行起来之后,还没有插入鼠标,会导致如下错误:
# Error opening mouse device '/dev/input/mouse0': No such file or directory
# ts_devices="mouseman:/dev/input/mouse0"
ts_devices="mouseman:/dev/input/mice"
if [ ! -z $touchEvent ]; then export TSLIB_TSDEVICE=/dev/input/${touchEvent} # 注释掉的内容写法会导致如下错误:
# -sh: ts_devices+= tslib:/dev/input/event4: No such file or directory
#ts_devices+=" tslib:/dev/input/${touchEvent}" # 注释掉的内容,如果系统运行起来之后,还没有插入鼠标,会导致如下错误:
# Error opening mouse device '/dev/input/mouse0': No such file or directory
# 看到有些地方写:MouseMan
# 有些地方写:tslib MouseMan
#ts_devices="mouseman:/dev/input/mouse0 tslib:/dev/input/${touchEvent}" ts_devices="mouseman:/dev/input/mice tslib:/dev/input/${touchEvent}"
fi
export QWS_MOUSE_PROTO=$ts_devices
......
I.MX6 linux Qt 同时支持Touch、mouse的更多相关文章
- I.MX6 Linux Qt 启动流程跟踪
/************************************************************************** * I.MX6 Linux Qt 启动流程跟踪 ...
- 【Linux开发】【Qt开发】QT 同时支持鼠标和触摸屏
QT 同时支持鼠标和触摸屏 现在 如果我要使用鼠标 导入环境变量 export QWS_MOUSE_PROTO=MouseMan:/dev/input/mice 使用触摸屏,导入环境变量 export ...
- I.MX6 Linux eGTouch TouchScreen porting
I.MX6 Linux eGTouch TouchScreen porting 一.Download Driver: http://www.eeti.com.tw/drivers_Linux.html ...
- I.MX6 Linux udev porting
/*********************************************************************** * I.MX6 Linux udev porting ...
- I.MX6 Linux 自动获取AR1020 event input节点
/*********************************************************************** * I.MX6 Linux 自动获取AR1020 ev ...
- I.MX6 Linux kernel LVDS backlight enable
/*************************************************************************** * I.MX6 Linux kernel LV ...
- I.MX6 Linux Serial Baud Rate hacking
/******************************************************************************** * I.MX6 Linux Seri ...
- I.MX6 linux kernel编译错误处理
/******************************************************************************** * I.MX6 linux kern ...
- I.MX6 linux eGalaxTouch 自动获取设备节点
I.MX6 linux eGalaxTouch 自动获取设备节点 \\\\\\\\\\\\\\-*- 目录 -*-///////////// | 一. 需求: | 二. /proc/bus/input ...
随机推荐
- Win7超级终端查看单片机printf输出
问题描述: 编写单片机C程序时,经常会用到printf输出信息进行查看,如何查看printf输出? 问题解决: (1)编写单片机C程序 ucos是一个实时多任务操作系统,以上是 ...
- new Date()的数据类型的问题
function getServerNow(){ return new Date(new Date() + svrMinusLocal); } svrMinusLocal是服务器时间减本地时间的时间差 ...
- Candy
There are N children standing in a line. Each child is assigned a rating value. You are giving candi ...
- POJ3764 The xor-longest path Trie树
代码写了不到30分钟,改它用了几个小时.先说题意,给你一颗树,边上有权,两点间的路径上的路径的边权抑或起来就是路径的xor值,要求的是最大的这样的路径是多少.讲到树上的两点的xor,一个常用的手段就是 ...
- POJ 3228 Gold Transportation(带权并查集,好题)
参考链接:http://www.cnblogs.com/jiaohuang/archive/2010/11/13/1876418.html 题意:地图上某些点有金子,有些点有房子,还有一些带权路径,问 ...
- C#接口的经典案例
C#接口(interface)实例子(简单而经典)2008/12/04 10:04using System; using System.Collections.Generic; using Syste ...
- 移动开发之meta篇
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable= ...
- java基础知识回顾之---java StringBuilder与StringBuffer异同点
/* * StringBuilder与StringBuffer异同点: * * 使用方法与StringBuffer完全一样 * Str ...
- 深入浅出Java并发包—原子类操作
我们知道,JDK1.5以后引入了并发包(java.util.concurrent)用于解决多CPU时代的并发问题,而并发包中的类大部分是基于Queue的并发类,Queue在大多数情况下使用了原子类(A ...
- Spring多资源文件properties的配置
Spring简化了加载资源文件的配置,可以通过<context:property-placeholder去加载,这个元素的写法如下: <context:property-placehold ...