29 Сентябрь 2008

Узнать раскладку клавиатуры

Клавиатура |  Таги: ,

Узнать раскладку клавиатуры.

Нам понадобится таймер.

Option Explicit
Private Declare Function GetKeyboardLayoutName _
    Lib "user32" Alias "GetKeyboardLayoutNameA" _
            (ByVal pwszKLID As String) As Long

Private Sub Form_Load()
Timer1.Interval = 1
End Sub

Private Sub Timer1_Timer()
Dim KeybLayoutName As String
KeybLayoutName = String(9, 0)
GetKeyboardLayoutName KeybLayoutName
If CStr(CLng(Left$(KeybLayoutName, _
    InStr(1, KeybLayoutName, Chr(0)) - 1))) _
    = 409 Then Label1.Caption = "Текущая раскладка - Английская"
If CStr(CLng(Left$(KeybLayoutName, _
    InStr(1, KeybLayoutName, Chr(0)) - 1))) _
    = 419 Then Label1.Caption = "Текущая раскладка - Русская"
End Sub


Оставить комментарий

Я не робот.