web-dev-qa-db-ja.com

カーソルのx、y座標を取得するためのプログラム?

カーソルのx、y座標を簡単に取得できるプログラムはありますか?

基本的に、カーソルを画面上のどこかに移動すると、x、y座標が表示され、クリップボードにコピーするか、何らかの方法でエクスポートするかを選択できます。

スクリーンショットを撮ってMSペイントで開くと、すでにこれを行うことができます。スクリーンショットの上にマウスカーソルを移動すると、ステータスバーに座標が表示されますが、手動で書き留める必要があるため、便利ではありません。

4
Click Upvote

ペグトップの PMeter これを行うことができます。

また、定規とカラーピッカーがあります。

(here be screenshots)


プログラムでは、これは GetCursorPos() Win32 API、または.NETでは Control.MousePosition を使用して実行されます。

言い換えれば、それは自分でできる時間です。これをMousePos.csにコピーします:

using System;
using System.Drawing;
using System.Windows.Forms;

class Coords {
    [STAThread]
    static void Main(string[] args) {
        bool copy = (args.Length == 1 && String.Compare(args[0], "/c") == 0);
        Point point = Control.MousePosition;
        string pos = String.Format("{0}x{1}", point.X, point.Y);
        if (copy) {
            Clipboard.SetText(pos);
        } else {
            Console.WriteLine(pos);
        }           
    }
}

.NET Frameworkを使用している場合は、次のコマンドでコンパイルします。

csc MousePos.cs /r:System.dll /r:System.Windows.Forms.dll /r:System.Drawing.dll

クリップボードにコピー:

mousepos /c

C#コンパイラcsc.exeは、C:\Windows\Microsoft.NET\Framework\v3.5にあります(バージョンは異なる場合があります。使用できるものはどれでも使用できます)。

3
user1686