マウススキャン Visual Basic 6.0 Visual Basic 2008

マウスの移動クリックを検知し、リストボックスに表示。

ここではAPI関数(GetCursorPos関数GetAsyncKeyState関数)を使用して、
マウスイベントをフォーム上に取得する。

下図は取得イメージ

サンプルの実行:解凍後、「マウススキャン.VB6.0」の中の「マウススキャン.exe」を実行
取得項目の詳細は「表示情報」を参照

メニュー
マウス移動の検知方法
マウスクリックの検知方法
表示する情報
サンプルコード VB6 VB2008
  ダウンロード VB6
  ダウンロード VB2008
関連方式
リンクリスト

マウス移動の検知方法

GetCursorPos関数

関数の定義

Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

関数の仕様

  マウスカーソル( マウスポインタ)の現在の位置に相当するスクリーン座標を取得

入力パラメータ

 lpPoint:マウスカーソルの位置に相当するスクリーン座標を受け取る 構造体へのポインタを指定

戻り値

 関数が成功すると0以外の数値が返る

マウスクリックの検知方法

GetAsyncKeyState関数

関数定義

Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Long) As Long

関数の仕様

 関数呼び出し時にマウス/キーが押されているかどうか、また、前回の GetAsyncKeyState 関数呼び出し以降にマウス/キーが押されたかどうかを判定。

入力パラメータ

vKey:最大 256 とおりの仮想キーコードのいずれかを指定

戻り値

関数が成功すると、前回の GetAsyncKeyState 関数呼び出し以降にマウス/キーが押されたかどうか、およびマウス/キーが現在押されているかどうかを示す値が返る。
下位2バイト最上位ビットがセットされた時、現在そのマウス/キーが押されていることを示し、 最下位ビットがセットされた時、前回の GetAsyncKeyState 関数呼び出し以降にそのマウス/キーが押されたことを示す。

スキャンする仮想キーコード

&H01:左ボタン
&H02:右ボタン
&H04:中ボタン

表示する情報



@:時間: 前回のイベント発生からの時間(ミリ秒)
A:マウス座標: x,y(スクリーン座標)
B:イベント名: Move(マウス移動)、Click(クリック)
C:アップダウン: Down(ボタンを押した)、Up(ボタンを放した)
D:キーコード: 仮想キーコード
E:コード名: 仮想キーコード名称

サンプルコード

 フォーム上に下記に示すコントロールを配置します。
コントロール配置 実行イメージ

フォームを追加し、下記のコントロールを配置

ラベル     1個
コマンドボタン 2個
リストボックス 1個

標準モジュールを追加


以下、VB6ソース サンプルコードのダウンロードVB6.0

サンプルの実行:解凍後、「マウススキャン.VB6.0」の中の「マウススキャン.exe」を実行

フォーム

標準モジュール


以下、VB2008ソース    サンプルコードのダウンロードVB2008

サンプルの実行 : 解凍後、「マウススキャン.VB2008」の中の「bin」→「マウススキャン.exe」を実行


関連方式

キースキャン  押されたキーをリストボックスに一覧表示
マウススキャン マウスの移動・クリックをリストボックスに一覧表示
マウス記録再生 マウス操作の記録と再生
他アプリへの文字入力 文字入力をエミュレート

×
PageTop