Как отследить в событии MouseDown объекта нажатие клавиш?
Например нужно отловить ЛеваяКнопкаМыши + Shift.
Private Declare Function GetKeyState Lib "user32.dll" (ByVal nVirtKey As VirtualKeyStates) As Short
Public Shared Function IsKeyPressed(ByVal testKey As VirtualKeyStates) As Boolean
Dim keyPressed As Boolean = false
Dim result As Short = GetKeyState(testKey)
Select Case (result)
Case 0
' Not pressed and not toggled on.
keyPressed = false
Case 1
' Not pressed, but toggled on
keyPressed = false
Case Else
keyPressed = true
End Select
Return keyPressed
End Function
If IsKeyPressed(Win32.VirtualKeyStates.VK_SHIFT)
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbLeftButton Then
If Shift = vbShiftMask Then
End If
End If
End Sub
MIT писал(а):Аналогия неверная, мышиные нажатия и клавиатурные передают разные параметры в обработчик события.
MIT писал(а):пользоваться им только из-за них двух достаточно глупо.
MIT писал(а):Денис, послушай.
Сейчас этот форум просматривают: AhrefsBot и гости: 43