1

Windows 7 アプリの場合、タイムスタンプの現在の位置、マウス カーソル、およびウィンドウ名を csv ログ ファイルに記録できる単純なスクリプトを作成したいと考えています。ユーザーがマウスをクリックしたときにのみ、プログラムのユーザビリティ テストのためにバックグラウンドでログインするようにしたい。形式は csv です。

timestamp, mouse_btn_name mouse_xpos,mouse_ypos, title_window_handler

ここで例を見つけましたが、私の要件に従って完全なものになりました。ロギングを行うにはどうすればよいですか?

MouseGetPos, xpos, ypos 
Msgbox, The cursor is at X%xpos% Y%ypos%. 

; This example allows you to move the mouse around to see
; the title of the window currently under the cursor:
#Persistent
SetTimer, WatchCursor, 100
return

WatchCursor:
MouseGetPos, , , id, control
WinGetTitle, title, ahk_id %id%
WinGetClass, class, ahk_id %id%
ToolTip, ahk_id %id%`nahk_class %class%`n%title%`nControl: %control%
return
4

1 に答える 1

1

この例では、100ミリ秒ごとにログが記録されるため、非常に長いリストが作成されます。
マウスボタンがクリックされたときにのみログに記録する場合は、次のようなものを使用します。

~LButton::
MyButton = Left
GoSub, MyRecord
Return

~RButton::
MyButton = Right
GoSub, MyRecord
Return

MyRecord:
MouseGetPos, xpos, ypos 
WinGetTitle, title, A
FormatTime, CurrentDateTime,, yyyy-MM-dd-HH-mm-ss 
FileAppend, %CurrentDateTime%`,%xpos%`,%ypos%`,%MyButton%`,%title%`n, C:\Temp\Record.csv
Return

これが適しているかどうか教えてください。編集:マウスの左と右のアクションを個別に記録
するように変更されましたcsv

于 2013-01-27T09:16:55.027 に答える