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 ...
随机推荐
- Vim安装ctags插件
问题描述: 系统安装ctags插件 问题解决: (1)下载ctags插件 (2)新下载的ctags文件是一个tar包文件,使用tar -zxcf命令进行解压缩 注: 解压缩之后的 ctags文件,如上 ...
- Leetcode#79 Word Search
原题地址 依次枚举起始点,DFS+回溯 代码: bool dfs(vector<vector<char> > &board, int r, int c, string ...
- spring测试父类,使用junit-4.4.jar,spring-test.jar
@ContextConfiguration(locations = "classpath:conf/applicationContext.xml") @RunWith(Spring ...
- DIY Ruby CPU 分析——Part I
[编者按]原文作者 Emil Soman,Rubyist,除此之外竟然同时也是艺术家,吉他手,Garden City RubyConf 组织者.本文是DIY Ruby CPU Profiling 的第 ...
- What is Object Oriented Design? (OOD)
Object Oriented Design is the concept that forces programmers to plan out their code in order to hav ...
- hdu 1713 相遇周期
求分数的最小公倍数.对于a/b c/d 先化简为最简分数,分数最小公倍数=分子的最小公倍数/分母的最大公约数. ;}
- lintcode :链表插入排序
题目: 链表插入排序 用插入排序对链表排序 样例 Given 1->3->2->0->null, return 0->1->2->3->null 解题: ...
- Unity UGUI —— 无限循环List(转载)
using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.UI; ...
- asp.net如何设置数据库连接池的数量
http://www.cnblogs.com/wbcms/archive/2008/10/11/1308725.html 可以使用一组名称-值对以链接字符串的形式配置链接池.例如,可以配置池是否有效( ...
- java nio管道
管道(Pipe) (本部分原文链接,作者:Jakob Jenkov,译者:黄忠,校对:丁一) Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据 ...