1

私は WPF と C# プロジェクトを持っており、ユーザーの観点からいくつかのホバー イベントをプログラムでテストしたいと考えています。先に進んで、ユーザーのホバー時に発生するイベントを手動で発生させることもできますが、それを行う前に、マウスの動きをシミュレートし、コードから画面上の場所に配置して、それを実行して発生させることができるかどうか疑問に思っていました。ビジュアル ツリーをバブリングした MouseMove (または適切なイベント)。

4

2 に答える 2

2

これはかなり古い質問であることは承知していますが、将来この問題に遭遇する人の助けになることを願っています。

任意のコントロールのクリック可能な位置 (ほとんどの場合は中央) に配置するには:

window.Mouse.Location = item.ClickablePoint; //using specific item

または、@3aw5TZetdf が Cursor.Positionで行うのと同様に、現在の場所を基準とするか、新しい場所を指定して、特定の場所に設定できます。

var point = window.Mouse.Location;
window.Mouse.Location = new Point(point.X - 200, p.Y - 200); // New location using current one. Replace 200 with your desire value
window.Mouse.Location = new Point(200, 200) // new location
于 2017-10-11T10:00:25.253 に答える
0

マウスの動きをシミュレートする方法があるかどうかはわかりませんが、プログラムでマウスを動かすことができます:

Cursor.Position = new Point(x, y); // x and y are integers that form a point

または、コントロールの真ん中に移動したい場合:

Cursor.Position = new Point(this.Location.X + button1.Location.X + button1.Width / 2,this.Location.Y + button1.Location.Y + button1.Height);

button1目的のコントロールに置き換えるだけです。

お役に立てれば!

于 2012-06-05T21:30:04.373 に答える