VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 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の新しい視覚スタイルでは、押されたようには見えませんので
あしからず。(電卓も同じです)


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -