windowsでマウスの移動距離を取得する方法は?


いくつかのWindowsのフリーウェアなどで、マウスの移動距離を取得して何かをしているものを見かけます。

このように「マウスの移動距離」を取得するためには、どんな言語の何ができると取得できるのでしょうか?

また、Vistaガジェットあたりで取得することはできないのでしょうか?

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/08/04 15:20:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:hsada No.1

回答回数48ベストアンサー獲得回数1

ポイント23pt

http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard10.h...

マウスが移動している時のX,Y座標が取れる言語であれば、どれでも可能だと思います。

ΣdL=sqr((x2-x1)^2+(y2-y1)^2)

一回の移動毎に直線距離を求めてそれを積算すれば良いのですから。

id:dingding

具体的にどの言語で取れるのでしょうか?

2007/07/29 08:40:09
id:KUROX No.3

回答回数3542ベストアンサー獲得回数140

ポイント22pt

JavaScript

マウスが押された位置を取得

http://www.tryhp.net/dynamic07.htm

-----------------------------------

Vistaガジェット

http://www.microsoft.com/japan/msdn/windowsvista/webcast/gadget_...

http://blogs.msdn.com/hiroyask/archive/2006/08/15/700506.aspx

HTML+CSS+Javascriptで、ガジェットはできるようです

id:dingding

この場合、あくまでもブラウザ上の話ではないのでしょうか?

ガジェットも結局はミニブラウザみたいなものなので、そのガジェットにフォーカスがないときでも取れるものでしょうか?

2007/07/29 15:00:31
id:ANSUKOEMU No.4

回答回数12ベストアンサー獲得回数0

ポイント22pt

フリーウェアというキーワードがあったので、HSP http://hsp.tv/ なんぞはどうですか?

初心者向けのフリーの言語です。


まずは、http://hsp.tv/idman/download.html からHSP3のキットをダウンロードして、インストール。

スクリプトエディタを実行して、以下のコードをぶち込んでF5で実行。

repeat
    title "現在X,Y= "+ginfo(0)+","+ginfo(1)
    wait 10
loop

ディスプレイ座標系でのポインタ位置を表示します。


下、更に移動距離とその累計についても表示。

font "",10:gmode 1
x=ginfo(0):y=ginfo(1)
tdr=0.0
repeat
    redraw 1:redraw 0
    x1=x:y1=y  ; 前の座標を保存
    x=ginfo(0):y=ginfo(1)  ; マウス座標取得
    dr = sqrt( 1.0*(x1-x)*(x1-x)+(y1-y)*(y1-y) ) ; 移動距離計算
    if( dr!0.0){
        tdr+=dr ; 移動距離の累計
	    title "現在X,Y= "+x+","+y+" Total移動距離 "+tdr
        boxf 60,460,dr+60,466:pos 0,460:print dr
        pos 0,0:gcopy 0,0,10,640,472
    }
    wait 10
loop
id:dingding

これはガジェット内で使えるのでしょうか?

フリーウェアを作りたいわけではありません。

2007/07/30 04:20:37

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません