Qt 在QML中,鼠标工作,但触摸不工作
我正在从事一个基于RPI和触摸屏的项目,并在前端使用QML/Qt Quick。对于触摸屏,我使用的是Adafruit 5英寸触摸屏,它通过microUSB接收触摸响应。RPI桌面上的触摸操作可以正常工作,但当我运行QML应用程序并尝试触摸按钮时,它没有响应。当按钮上有鼠标指针时,触摸会做出响应。此外,我还尝试使用以下方法旋转屏幕:Qt 在QML中,鼠标工作,但触摸不工作,qt,raspberry-pi,qml,touchscreen,adafruit,Qt,Raspberry Pi,Qml,Touchscreen,Adafruit,我正在从事一个基于RPI和触摸屏的项目,并在前端使用QML/Qt Quick。对于触摸屏,我使用的是Adafruit 5英寸触摸屏,它通过microUSB接收触摸响应。RPI桌面上的触摸操作可以正常工作,但当我运行QML应用程序并尝试触摸按钮时,它没有响应。当按钮上有鼠标指针时,触摸会做出响应。此外,我还尝试使用以下方法旋转屏幕: export QT_QPA_EGLFS_ROTATION=180 但是没有起作用 我不知道我做错了什么?有人能帮我吗 提前谢谢 下面是我为运行应用程序而设置的参数
export QT_QPA_EGLFS_ROTATION=180
但是没有起作用
我不知道我做错了什么?有人能帮我吗
提前谢谢
下面是我为运行应用程序而设置的参数
#!/bin/sh
export LD_LIBRARY_PATH=/usr/local/qt5pi/lib
export QML_IMPORT_PATH=/usr/local/qt5pi/qml
export QML2_IMPORT_PATH=/usr/local/qt5pi/qml
export QT_QPA_PLATFORM=eglfs
export QT_QPA_EGLFS_TSLIB=1
export QT_QPA_EGLFS_HIDECURSOR=1
export QT_QPA_EGLFS_MOUSE_PARAMETERS=abs
export QT_QPA_EGLFS_PHYSICAL_WIDTH=210
export QT_QPA_EGLFS_PHYSICAL_HEIGHT=150
/usr/local/qt5pi/bin/qmlscene testQml.qml
测试代码testQml.qml
import QtQuick 2.0
Rectangle {
id:rootTangle
width:360
height: 360
color:"red"
Rectangle {
id: blueRec
color: "blue"
width: rootTangle.width/2
height: rootTangle.height/6
anchors.centerIn: rootTangle
border.width:7
border.color: "#000000"
radius: 20
}
MouseArea {
id:blueRecMouseArea
anchors.fill:blueRec
onClicked: {
Qt.quit();
}
}
}
evtest
命令并触摸触摸触摸屏来测试触摸事件是否到达evdev。您还可以使用cat/dev/input/eventX | hextump
configure
log,然后了解是否由于依赖性检查失败而未构建某些模块。引自同一页:尝试禁用内置输入处理程序
export QT\u QPA\u EGLFS\u DISABLE\u INPUT=1
QT使用libinput作为默认的输入处理程序。如果您想使用另一个处理程序,则应该禁用libinput。影响将取决于您选择用什么替换libinput。在tslib的情况下,它只支持单点触摸。您可以阅读更多信息我检查了配置输出,并且我有触摸所需的所有文件,例如:eglfs。。仍然收到此错误。好的,您知道触摸设备的路径吗?如果是,当你玩它时,它会输出什么吗?或者它是作为标准鼠标处理的,而不是触摸屏?这有什么可能的影响吗?为什么您认为它可以解决这个问题?QT使用libinput作为默认的输入处理程序。如果您想使用另一个处理程序,则应该禁用libinput。影响将取决于您选择用什么替换libinput。在tslib的情况下,它只支持单点触摸。你可以阅读更多关于它的好信息,你应该把它包括在实际的答案中,如果你这样做了,你可能会得到一些选票