qt multi-touch linux,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 启动流程跟踪

/************************************************************************** * 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 ...

随机推荐

我所了解的cgi

http://www.cnblogs.com/liuzhang/p/3929198.html 当我们在谈到cgi的时候,我们在讨论什么 最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在 ...

ListView属性整理

stackFromBottom属性,这只该属性之后你做好的列表就会显示你列表的最下面,值为true和false android:stackFromBottom="true"   第 ...

Ubuntu-1404 GDB 调试C++报错

问题 Ubuntu1404下,当用GDB调试C++程序时,报错ImportError: No module named 'libstdcxx' 解决办法 vim ~/.gdbinit #~/.gdbi ...

OpenGL 的空间变换(上):矩阵在空间几何中的应用

在使用 OpenGL 的应用程序中,当我们指定了模型的顶点后,顶点依次会变换到不同的 OpenGL 空间中,最后才会被显示到屏幕上.在变换的过程中,通过使用矩阵,我们更高效地来完成这些变换工作. 本篇 ...

Mysql增量写入Hdfs(二) --Storm+hdfs的流式处理

一. 概述 上一篇我们介绍了如何将数据从mysql抛到kafka,这次我们就专注于利用storm将数据写入到hdfs的过程,由于storm写入hdfs的可定制东西有些多,我们先不从kafka读取,而先 ...

python中的matplotlib的一些基础用法

#绘制折线图或者散点图plot import matplotlib.pyplot as pyl import numpy as npy x = [1,2,3,4,8] y = [5,7,2,1,5] ...

在Mac OS X上用Fluid把网页变成本地App

最近一直在个在线听音乐的解决方案,也下了很多的本地软件,什么酷狗.酷我.豆瓣.虾米.QQ.百度音乐之类的,下了一大堆,都逐个测试了,效果都不是很理想-- 要么是UI太悲催,要么是对Retina支持不友 ...

Linux学习笔记-文件处理和权限命令

目录 文件处理命令 touch cat tac more less head tail 链接命令 ln 权限命令 chmod 权限管理命令 chown chgrp umask 文件处理命令 touch ...

vue路由两种传参的区别

//定义路由 { path:"/detail", name:"detail", component:home } //这种做法是错误的,这是query传参的方式 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值