KeyDown

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: KeyDown

Re: KeyDown

by rikaeigo » 2017年6月02日(金) 21:58

入力フォーカスがウィンドウのボタンなどのコントロールに無ければ、これで判断できると思います。

If GetAsyncKeyState(VK_SHIFT) < 0 Then
If GetAsyncKeyState(37) < 0 Then
'●●●●●● Shift + ←押された
OutputDebugString("Shift + ←押された")

ElseIf GetAsyncKeyState(38) Then '↑
'●●●●●● Shift + ↑押された
OutputDebugString("Shift + ↑押された")

EndIf
EndIf

-----------------------------------------------------------------

フォーカスがボタンなどに行ってしまう場合は

Createなどでタイマーをセットして、
SetTimer(hMainWnd,0,100,0) '100の所がタイマー処理呼び出し間隔

Sub MainWnd_Timer(TimerID As DWord)

If GetAsyncKeyState(VK_SHIFT) < 0 Then
If GetAsyncKeyState(37) < 0 Then
'●●●●●● Shift + ←押された
OutputDebugString("Shift + ←押された")

ElseIf GetAsyncKeyState(38) Then '↑
'●●●●●● Shift + ↑押された
OutputDebugString("Shift + ↑押された")

EndIf

EndIf

End Sub

こうすればOKです。

KeyDown

by monta » 2017年5月30日(火) 19:10

わからなくて悩んでいます。よろしくご教授ください。
Sub MainWnd_KeyDown(KeyCode As Long, flags As Long)
これのKeyCodeで矢印キーボタンを読んでいます。
shfitキー+矢印キーの場合はどう読めば良いでしょうか。

ページトップ