[英]Touchscreen with Qt5 embedded not working
我有qt5嵌入Linux。 當我使用Linux幀緩沖區運行程序時,我的觸摸屏不起作用,例如:
./myprog -plugin tslib:/dev/input/event0
更多細節:
ts_calibrate
運行正常 ./myprog -platform eglfs
運行我的程序時,觸摸屏工作正常 我的環境:
TSLIB_TSDEVICE=/dev/input/event0 USER=root LD_LIBRARY_PATH=/usr/local/Qt-5.3.2/lib/ TSLIB_TSEVENTTYPE=INPUT OLDPWD=/usr/local/Qt-5.3.2 HOME=/root QTDIR=/ TSLIB_FBDEVICE=/dev/fb0 QT_QPA_EVDEV_KEYBOARD_PARAMETERS=/dev/input/event1 TSLIB_PLUGINDIR=/usr/lib/ts TSLIB_CONSOLEDEVICE=none LOGNAME=root TERM=vt102 QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=rotate=270 PATH=/sbin:/usr/sbin:/bin:/usr/bin QT_QPA_GENERIC_PLUGINS=evdevmouse:/dev/input/event0 TSLIB_CONFFILE=/etc/ts.conf SHELL=/bin/sh QWS_DISPLAY=powervr QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0:rotation=0 PWD=/root QWS_MOUSE_PROTO=tslib TSLIB_CALIBFILE=/etc/pointercal
Qt 5.3.2 config.status
:
configure -verbose -confirm-license -release -no-xcb -no-pch -icu -tslib -qpa eglfs -no-c++11 -no-cups -no-gtkstyle -make libs -opensource -skip qtactiveqt -skip qtandroidextras -skip qtconnectivity -skip qtenginio -skip qtimageformats -skip qtlocation -skip qtmacextras -skip qtsensors -skip qtserialport -skip qttranslations -skip qttools -skip qtwebkit-examples -skip qtwinextras -skip qtx11extras -xplatform linux-omap3-g++ -qpa eglfs -qpa linuxfb -evdev
Qt對tslib
的支持是不確定的。 我發現Qt的一部分嘗試實現手勢,但Qt的一部分嘗試將觸摸映射到鼠標點擊。 根據我自己的經驗,結果是未完成/放棄的手勢。
我希望你找到解決方案。 如果沒有,試試這個:
指定TSLIB設備
export TSLIB_TSDEVICE = / dev / input / event0
在某些設備上,您必須啟用TSLIB支持(在我的主板上不需要)
export QT_QPA_FB_TSLIB = 1
啟動您的申請
./myCuteQt5App -platform linuxfb -plugin tslib
一切都應該正常工作(在我的情況下就像一個魅力;))。
希望能幫助到你。
由於您有可用的evdev
,因此您可以使用它進行輸入更成功。 我成功地使用了以下內容:
export QT_QPA_PLATFORM=linuxfb
export QT_QPA_GENERIC_PLUGINS=evdevtouch,evdevmouse,evdevkeyboard
export QT_QPA_EVDEV_KEYBOARD_PARAMETERS=grab=1
從tslib 1.3版開始,您可以使用包含的ts_uinput守護程序來創建evdev輸入設備。 將你的evdev環境指向它,你就可以使用tslib過濾和校准的觸摸輸入,而無需使用QT的tslib插件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.