2016-03-20 15 views
0

以下のコードはコンソールのマウスの位置を500msごとに示しています。私は左クリックが発生したときに表示するマウスの位置を取得する方法を把握しようとしています。 これは以下のようになります。左のクリックでコンソールに出力C#

enter image description here

public static void MacroMouseThread() 
{ 
    Console.WriteLine("MouseLocation Started"); 

    while (true) 
    { 
     // Shows mouse location cords 
     Console.WriteLine(Cursor.Position.ToString()); 
     Thread.Sleep(500); 
    } 

} 

私は、画面上の任意の場所を左クリックしますと、それは常に連続して印刷することに反対し、コンソールに出力します。

答えて

0

イベントドリブンプログラミングを使用する必要があります。

this.MouseClick += mouseClick; 

private void mouseClick(object sender, MouseEventArgs e) 
{ 
    if (e.Button == MouseButtons.Left) 
    { 
     Trace.WriteLine("Mouse clicked"); 
     Console.WriteLine(Cursor.Position.ToString()); 
    } 
} 

あなたのコード全体は表示されませんが、あなたはそのアイデアを得ることができます。

さらに詳しい情報が必要な場合は、C#および代議員のイベントドリブンプログラミングを検索してください。

良いチュートリアル:http://www.codeproject.com/Articles/1008553/Event-Driven-Programing-in-NET

+0

そして、どのようにあなたは、このアプリのコンソールで動作するように起こっていると思いますか? – DavidG

+0

私はこのコードを実行すると言っていない、私はイベント駆動型プログラミングを使用する必要があると言うことを試みている。私は彼のアプリケーションも完全には見ません。 – ferit

+0

あなたの答えはコンソールアプリケーションでは全くナンセンスですが、純粋なイベント駆動型プログラミングではこれを行う方法がありません。 – DavidG

関連する問題