2016-03-28 10 views
2

私は途中でウィンドウアプリケーションとして実行しているjavafxゲームを持っています。ゲームはマウスを動かすことによって制御されますが、私の問題はマウスを遠くに動かすとウィンドウの外に出ることです。なぜなら、私はクリックもゲームの一部であり、私のゲームはGoogle Chromeの背後に隠されていますが、まだ実行されているので、alt +タブでゲームに戻って十分に速く戻ることができなければ、私は負けてしまいます。マウスがウィンドウを終了するのを止めるには?

マウスをウィンドウから離して、ゲームが実行されているウィンドウ/ステージ/シーンの境界に拘束しないようにして、この問題を解決したいと思います。マウスをこのように収縮することは可能ですか?私はどうすればいいですか?

+1

http://stackoverflow.com/questions/2941324/how-do-i-set-the-position-of-the-mouse-in-javaユーザーが移動を試みるときに枠線に移動します。 – Sarvadi

+0

私は仕事用コンピュータに家に帰ると、それを試すことができます – Chexxor

答えて

1

Robotでこれを行うことができます。具体的には、mouseMoveを使用すると、マウスの位置が大きくずれている場合にリセットすることができます。

代わりに、ユーザーがウィンドウをエスケープできるようにして、ゲームがそのイベントに反応するようにすることもできます。たとえば、マウスがウィンドウを離れるときにゲームを一時停止します。

pointerInfoを使用して、カーソルの位置を追跡できます(前述のhere)。

+0

私は家に帰るとロボットをチェックしますが、手動でマウスを私が望む位置に動かす必要がありますか?だから私はそれがどこにあるのかを計算しなければならないだろうか? – Chexxor

+1

はい。 'mouseMove'を使うと、カーソルの座標を明示的に設定できます。 1つの例は、カーソルのX座標とY座標を常に監視し、マウスがウィンドウの境界を離れるのを防ぐためにXまたはYをリセットすることです。代わりに、カーソルをウィンドウの中心に戻すこともできます。特定の実装はあなた次第です。 – mcmahoniel

関連する問題