キーボードの状態を取得 <TOP>
キーボード、マウスボタンの状態を取得します。
GetAsyncKeyState キーボードの状態を取得
フォームの内外に関係なくどのボタンがクリックされたかを表示します。
'================================================================ '= キーボードの状態を取得
'= (GetAsyncKeyState.bas) '================================================================ #include "Windows.bi" ' キーボードの状態を取得 Declare Function Api_GetAsyncKeyState& Lib "user32" Alias "GetAsyncKeyState" (ByVal vKey&) #define VK_LBUTTON &H1 'マウス左ボタン #define VK_RBUTTON &H2 'マウス右ボタン #define VK_MBUTTON &H4 'マウス中央ボタン Var Shared Text1 As Object Var Shared Timer1 As Object Text1.Attach getDLgItem("Text1") : Text1.SetFontSize 14 Timer1.Attach getDlgItem("Timer1") '================================================================ '= '================================================================ Declare Sub MainForm_Start edecl () Sub MainForm_Start() Timer1.SetInterval 50 Timer1.Enable -1 End Sub '================================================================ '= '================================================================ Declare Sub Timer1_Timer edecl () Sub Timer1_Timer() If Api_GetAsyncKeyState(VK_LBUTTON) Then Text1.SetWindowText "左ボタンがクリックされました!" Else If Api_GetAsyncKeyState(VK_RBUTTON) Then Text1.SetWindowText "右ボタンがクリックされました!" Else If Api_GetAsyncKeyState(VK_MBUTTON) Then Text1.SetWindowText "中央ボタンがクリックされました!" Else Text1.SetWindowText "" End If End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End