Qt 不能响应Tslib输入的问题

你前记:
之所以写下这个,是因为最近调试Qt和tslib时,出现Qt程序不能正常响应点击事件,表现是:ts_calibrate ts_test ts_print 等功能都正常,但是在Qt程序里面,无论怎样点击pushButton都没有任何反应。

1、检查环境变量是否正确,QT4和Qt5差异较大,可以查找相关资料进行对比尝试;
2、单独测试tslib,可以检测tslib移植是否正确。
A、可以简单测试tslib校准
root@board# ts_calibrate
xres = 800, yres = 480
Took 48 samples…
Top left : X = 403 Y = 707
Took 50 samples…
Top right : X = 3692 Y = 773
Took 24 samples…
Bot right : X = 3709 Y = 3513
Took 22 samples…
Bot left : X = 359 Y = 3478
Took 44 samples…
Center : X = 2028 Y = 2131
-31.959106 0.210839 0.001050
-48.119202 -0.002090 0.137888
Calibration constants: -2094472 13817 68 -3153540 -136 9036 65536
此时可以在屏幕上进行五点校准,如果显示校准界面,但是不能进行点击校准,说明变量没有设置好,或者硬件链接有问题,优先检测环境变量设置;

B、校准完成后,可以使用tslib的打印功能,检测校准后的坐标输出;
root@board# ts_print
1458731838.534418: 222 292 284
1458731838.536585: 220 292 284
1458731838.549525: 219 293 284
1458731838.551691: 219 294 281
1458731838.558161: 220 294 281
1458731838.560328: 220 295 282
1458731838.588618: 231 295 0
1458731839.537653: 633 372 305
1458731839.539820: 631 372 311
1458731839.541987: 632 372 316
1458731839.544154: 631 371 316
1458731839.548457: 631 372 321
1458731839.550623: 630 372 323
1458731839.552790: 630 372 323
1458731839.563563: 629 372 323
1458731839.574335: 629 370 324
1458731839.587275: 630 370 318
1458731839.630640: 625 370 0
会出现上述数据,二、三列应该是点击的xy坐标,这坐标在未校准之前输出跟实际是会有比较大的差别的,所以需要先按照A进行校准;

如果校准后输出坐标依然不准确,请检查硬件去吧,可能屏幕的触摸部分有问题了。
我的板子问题就是屏幕触摸部分有问题,导致了ts_print打印的坐标值x一直是-18900左右,所以Qt程序根本检测不到button上的触摸事件。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 校准是指通过对触摸屏进行一系列操作和调整,使其能够准确地感知和响应手指或其他触摸操作。在Qt5.9.9中,tslib1.22是一个触摸屏校准工具。 校准触摸屏可以提高触摸精度和准确性,使得用户在使用触摸屏设备时能够更加方便和流畅地进行操作。校准旨在消除触摸屏的误差和漂移,确保触摸点与实际点击位置一致。 在Qt5.9.9中,使用tslib1.22进行触摸屏校准的步骤如下: 1. 确保系统已经安装了tslib1.22。如果没有安装,可以通过包管理器或在官方网站上下载并安装。 2. 打开终端或命令行界面,并进入tslib1.22安装目录。 3. 运行命令"calibrate",启动触摸屏校准工具。 4. 根据屏幕上的指示,依次点击几个目标点,使校准工具准确计算出触摸屏的误差和漂移。 5. 完成所有目标点的点击后,校准工具将显示校准结果。 6. 根据校准工具的指示,确认校准结果是否满意。 7. 如果满意,保存校准结果,并重启系统使之生效。 8. 如果不满意,可以重新进行校准,或者调整校准参数,直到满意为止。 通过使用tslib1.22进行触摸屏校准,可以提高触摸屏的精度和准确性,为用户提供更好的触摸体验。不同设备可能有不同的校准步骤或工具,可以根据具体情况选择合适的方法进行校准。 ### 回答2: 校准在qt5.9.9中是通过tslib1.22实现的。Qt是一款跨平台的开发框架,它允许开发者使用C++编写高效且易于维护的应用程序。而tslib是一个触摸屏校准工具,用于校准触摸屏设备。 在qt5.9.9的安装过程中,tslib1.22是一个常用的工具,它能够检测触摸屏的坐标并进行校准,以确保在使用触摸屏进行交互时,触摸点的准确性和精度。 校准过程主要分为三个步骤:采集样本、计算参数和应用参数。 首先,通过ts_calibrate命令行工具或者使用图形界面的Qt触摸屏校准程序进行采集样本。在这个步骤中,用户需要按照指示在屏幕上轻触几个指定的位置,以获取屏幕的触摸信息。 接下来,根据采集到的样本数据,计算出校准参数。这些参数将用于校准算法,以进行更准确的触摸点转换。 最后,应用参数到系统中,以使系统能够正确地将触摸点转换为屏幕上的坐标。这样,在使用触摸屏设备时,就能够获得准确和精确的触摸体验。 总的来说,通过在qt5.9.9中使用tslib1.22进行校准,可以很好地提高触摸屏设备的准确性。这样,用户在使用触摸屏进行交互时将获得更好的用户体验。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值