Qt を使用して Kindle で実行可能なマウス ポインター インターフェイスを作成するのは簡単ではありません (もちろん、非公式です)。5 方向ジョイスティックは、一度に複数の方向を追跡することはできません (斜めの動きはありません)。また、画面の更新が遅すぎて適切なフィードバックを得ることができません。
加速は制限されていますが、画面の遅延により、使用するのは非常にイライラします. 5 ウェイを離すと、マウスは 1 ~ 2 秒間動き続けます...そして常に一定の遅延があるわけではありません。
これらの制限を考えると、アプリケーション側からの助けが本当に必要です。マウスドライバープラグインが加速プロファイルを特定するために使用できる方法が必要です...ボタンを横切るときに速度が低下すると言うことができます。このアプリは、さまざまな加速が理にかなっている領域を定義するのに役立ちます (描画領域で 1 ピクセルのシフトから始めますが、ダイアログのデッド スペースの場合は 10 程度から始めます)。もっと簡単に言えば、アプリケーションはマウス ポインターにカーソル モードからキーパッド モードへの移行などを指示できる必要があります。
ただし、マウス ドライバーを列挙することはできますが、ドライバー名を取得できないようです。それらは QObject ではないため、qobject_cast はありません。それらが私のものであり、キャストしても安全であることをどのように識別できますか? キャストを強制することはできますが、それはかなり不自由なようです。
プラグインが私のものであると仮定して、それらをキャストしますか?
これを配線する簡単な信号/スロットの方法が欲しいです。
アップデート
おそらく、プラグインがアプリに何らかの形で通知することができます。多分QApplication::topLevelWidgets()を使用して、 qobject_cast を試して QMainWindow を探して...プラグインの内部 QObject ベースのシグナルハンドラークラスでカスタムシグナルを送信しますか? その後、アプリは向きを変えて、実際に処理したい接続をセットアップできます。今夜か明日試してみます。