2017-07-31 14 views
0

良い一日を。USBタッチデバイスを再接続した後、Qtがタッチイベントをキャプチャできないのはなぜですか?

タッチデバイスのホットプラグに問題があります。

以下のように環境変数を設定しました。 輸出QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS =は/ dev /入力/ ts_uinput:回転= 0

"は/ dev /入力/ ts_uinputは、" TSライブラリのアプリケーション "ts_uinput" によって作成されます。

USBタッチデバイスを再接続する前に、タッチ機能が正常に動作することがあります。 USBタッチデバイスを再接続すると、タッチ機能が働きません。

「/ dev/input/ts_uinput」は、USBタッチデバイスを再接続した後でも作成されます。

"/ dev/input/ts_uinput"のデータも監視し、データレポートも持っています。

USBタッチデバイスを再接続した後にQtがタッチイベントを取得しないのはなぜですか?

答えて

0

これは、Qt(Qt evdevプラットフォームプラグイン)がアプリ起動時に/dev/input/ts_uinputを開くため、これが大胆に推測されます。タッチデバイスを再接続すると、ファイルは再作成されますが、Qtが保持するファイルハンドルは無効になります。 Qtが再び動作するようにするには、ハンドルを閉じて再度開く必要があります。

あなたは、デバッグログを有効にすることで、より多くの情報を取得してみてください:http://doc.qt.io/qt-5/embedded-linux.html#debugging-input-devices

しかし、私はこれはバグや欠落している機能であるならば、あなたはQtのinterest mailing listまたはreport a bugに連絡することがありますか分かりません。

関連する問題