Option Explicit
Private Declare Sub keybd_event Lib "user32" _
(ByVal bVk As Byte, ByVal bScan As Byte, _
ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Declare Function MapVirtualKey Lib "user32" _
Alias "MapVirtualKeyA" _
(ByVal wCode As Long, ByVal wMapType As Long) As Long
Private Const KEYEVENTF_EXTENDEDKEY = &H1
Private Const KEYEVENTF_KEYUP = &H2
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Private Sub SetKeyState(ByVal Key As Long, ByVal State As Boolean)
Call keybd_event(Key, MapVirtualKey(Key, 0), _
KEYEVENTF_EXTENDEDKEY Or 0, 0)
Call keybd_event(Key, MapVirtualKey(Key, 0), _
KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0)
End Sub
Private Property Get CapsLock() As Boolean
CapsLock = GetKeyState(KeyCodeConstants.vbKeyCapital) = 1
End Property
Private Property Let CapsLock(ByVal Value As Boolean)
Call SetKeyState(KeyCodeConstants.vbKeyCapital, Value)
End Property
Private Property Get NumLock() As Boolean
NumLock = GetKeyState(KeyCodeConstants.vbKeyNumlock) = 1
End Property
Private Property Let NumLock(ByVal Value As Boolean)
Call SetKeyState(KeyCodeConstants.vbKeyNumlock, Value)
End Property
Private Property Get ScrollLock() As Boolean
ScrollLock = GetKeyState(KeyCodeConstants.vbKeyScrollLock) = 1
End Property
Private Property Let ScrollLock(ByVal Value As Boolean)
Call SetKeyState(KeyCodeConstants.vbKeyScrollLock, Value)
End Property
Private Sub Command3_Click()
'Text1.SetFocus
'SendKeys "{CAPSLOCK}"
CapsLock = Not CapsLock
End Sub
Private Sub lblKey0_Click()
Text1.SetFocus
SendKeys "0"
End Sub
Private Sub lblKey1_Click()
Text1.SetFocus
SendKeys "1"
End Sub
Private Sub lblKey2_Click()
Text1.SetFocus
SendKeys "2"
End Sub
Private Sub lblKey3_Click()
Text1.SetFocus
SendKeys "3"
End Sub
Private Sub lblKey4_Click()
Text1.SetFocus
SendKeys "4"
End Sub
Private Sub lblKey5_Click()
Text1.SetFocus
SendKeys "5"
End Sub
Private Sub lblKey6_Click()
Text1.SetFocus
SendKeys "6"
End Sub
Private Sub lblKey7_Click()
Text1.SetFocus
SendKeys "7"
End Sub
Private Sub lblKey8_Click()
Text1.SetFocus
SendKeys "8"
End Sub
Private Sub lblKey9_Click()
Text1.SetFocus
SendKeys "9"
End Sub
Private Sub lblKeyBksp_Click()
Text1.SetFocus
SendKeys "{BACKSPACE}"
End Sub
Private Sub lblKeyDecimal_Click()
Text1.SetFocus
SendKeys "."
End Sub
Private Sub lblKeyDivide_Click()
Text1.SetFocus
SendKeys "{/}"
End Sub
Private Sub lblKeyEnter_Click()
Text1.SetFocus
SendKeys "{ENTER}"
End Sub
Private Sub lblKeyMultiply_Click()
'Text1.SetFocus
SendKeys "{*}"
End Sub
Private Sub lblKeyNumLock_Click()
'SendKeys "{NUMLOCK}"
NumLock = Not NumLock
End Sub
Private Sub lblKeyPlus_Click()
Text1.SetFocus
SendKeys "{+}"
End Sub