背景:我正在开发一个基于 Qt 的大型 GUI,它处理与触摸屏的所有用户交互。该程序的设计使得用户不需要访问命令提示符即可执行任何操作,包括重新校准触摸屏。我写了一个 tslib 的模仿品ts_calibrate
作为运行的实用程序QWidget
并可以修改 tslib 的校准文件/etc/pointercal
.
但是,虽然我可以修改校准文件,但在关闭并重新启动程序之前,对校准的更改似乎不会应用。我已经编写了一个可以处理重新打开程序的脚本,但我想找到一种更优雅的方法来执行此操作,以便将用户的麻烦保持在最低限度。
简单的说,Qt 的类之一中是否有一个函数可以动态重新加载 tslib 的校准文件,而无需重新启动应用程序?我已经浏览过QWSServer 类参考 http://doc.qt.nokia.com/stable/qwsserver.html但我没有找到任何看起来像我想要的东西。
原来,司机can无需重新启动应用程序即可重新加载。为此,您可以使用以下方法关闭并重新打开指针设备:QWS服务器类 http://doc.qt.nokia.com/latest/qwsserver.html像这样:
#include <QWSServer>
...
QWSServer::instance()->closeMouse();
QWSServer::instance()->openMouse();
这将导致重新加载 tslib 的校准文件。例如,如果您以错误的校准启动程序,请在程序运行时更正触摸屏的校准文件,然后调用这些方法,指针将调整为新的校准。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)