シルバーのMouseMove:移動中に行方不明のポイントを見つけます

StackOverflow https://stackoverflow.com/questions/3020347

  •  26-09-2019
  •  | 
  •  

質問

SilverlightのIでの応用では、

が働いている、私は、マウスの動きを追跡する必要があります。私の問題は、20,20(その後、EN(私はリスト内の各点を追加した場合、私が持つことができる(10,10)、ユーザが十分に速く、マウスを移動した場合にMouseMoveイベントを使用して、私はポイントの連続セットを持っていないということです)...)

私は、マウスが移動中にされているすべてのポイントを持っているしたいと思います。 あなたが任意のアイデアを持っていますか?

役に立ちましたか?

解決

これは、効率的に作業することはできません。 OS上でSilverlightの待機のMouseMoveイベントは、それに座標で信号を送信します。それは非常に高速に移動した場合、オペレーティングシステムは、それが動くすべての単一のポイントのためにそのイベントを発生しません。ほとんどのOSは、これらのループは、高速であれば、それはおそらく、すべての点についてのMouseMoveをピックアップし、無限ループ、機械の状態のチェックを実行します。 0.001msで(20,20)と(1,1)からマウスを移動する場合はループが時間通りにそれをヒットしていない場合、OSはおそらくすべてではないであろう(10,10)でイベントを呼び出すか、それだろう。

あなたはおそらくこれまでに短縮することができる方法は、あなたのMouseMoveでコードを軽減したり、非同期を作るされています。

もう一つの方法は、あなたがすでに収集してきた内容に基づいてパスを計算するために、数学的な方法です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top