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 ...
随机推荐
- oracle——表修改语句集合
alter table table_name modify column_name default 0;
- [设计模式] 15 解释器模式 Interpreter
在GOF的<设计模式:可复用面向对象软件的基础>一书中对解释器模式是这样说的:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子.如果一种特定类 ...
- log4j记录exception异常有价值信息及log4j级别
try{ }catch(Exception e){ e.printStackTrace(); log.error("配件导出excel错误:", e.fillInStackTrac ...
- eclipse 开发技巧
1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了.这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xm ...
- 精华阅读第 10 期 |解开阿尔法狗(AlphaGo)人工智能的画皮
谷歌用一个变了身的古老「穷举算法」,披上「神经网络」的画皮,假装「跨时代」的黑科技,忽悠广大「膜拜者」,「狮仙」我实在看不下去了,来揭一揭这只幺蛾子小狗的画皮. 本期是移动开发精英俱乐部的第10期推荐 ...
- hdu 4038 Stone
思路: 如果负数的个数为偶数则不必改变,为奇数就将最大负数变为正: 对于正数,尽量将1,2变为3即可. 代码如下: #include<cstring> #include<iostre ...
- 关于DotNetBar中DataGridViewX 自动全屏 Anchor属性无效问题
由于在DataGridViewX 中使用了控件DataGridViewCheckBoxXColumn会导致 Anchor属性无效问题化,具体原因未知,建议改换为系统自带的DataGridViewChe ...
- Libsvm学习
本篇博客转自 http://www.cppblog.com/guijie/archive/2013/09/05/169034.html 在电脑文件夹E:\other\matlab 20 ...
- 修改Eclipse字体
选择菜单:Windows->Preferences->Genneral->Appearance->Colors and Font
- Photoshop:笔刷制作和安装
笔刷制作 1.新建一个文档,大小为要制作的笔刷大小,把画笔图像放里面 2.选择:菜单->编辑->定义画笔预设,这时在画笔面板中会出现刚定义的画笔 3.存储画笔,可以把当前的笔刷保存为一个. ...