投稿日 | : 2005/05/14(Sat) 15:45 |
投稿者 | : Starfish |
Eメール | : |
URL | : |
タイトル | : Re^4: キーボードとコマンドボタンを連動させたい |
今度は、Win32APIを使用するやり方です。
電卓を、スパイで見てみると、BM_SETSTATE のメッセージを使っているようです。
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) _
As Long
Private Const BM_SETSTATE = &HF3
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Dim lngReturnValue As Long
lngReturnValue = SendMessage(Command1.hwnd, BM_SETSTATE, 1, ByVal 0&)
Sleep (100)
Command1.Value = True
lngReturnValue = SendMessage(Command1.hwnd, BM_SETSTATE, 0, ByVal 0&)
End Sub
ところで、XPの新しい視覚スタイルでは、押されたようには見えませんので
あしからず。(電卓も同じです)