Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переключение расскладки клавиатуры 
:(
    Опции темы
cardinal
Дата 31.5.2005, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Код

Private Const KL_NAMELENGTH As Long = 9
Private Const HKL_NEXT As Long = 1
Private Const HKL_PREV As Long = 0

Private Declare Function ActivateKeyboardLayout Lib "user32" ( _
    ByVal HKL As Long, _
    ByVal Flags As Long) As Long
   
Private Declare Function GetKeyboardLayout Lib "user32" ( _
    ByVal dwLayout As Long) As Long
   
Private Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" ( _
    ByVal pwszKLID As String) As Long

Private Sub Command1_Click()

   Dim lngCurrent_HKL As Long
   Dim strCurrent_Buffer As String
   Dim lngSwitched_HKL As Long
   Dim strSwitched_Buffer As String

   'узнать какая щас расскладка клавиатуры
   lngCurrent_HKL = GetKeyboardLayout(0)
  
   'сделать буффер
   strCurrent_Buffer = String(KL_NAMELENGTH - 1, 0)
   strSwitched_Buffer = String(KL_NAMELENGTH - 1, 0)
  
   'узнать название расскладки клавиатуры
   GetKeyboardLayoutName strCurrent_Buffer
  
   'переключить на следующию расскладку клавиатуры
   ActivateKeyboardLayout HKL_NEXT, 0
  
   'узнать переключёную расскладку клавиатуры
   lngSwitched_HKL = GetKeyboardLayout(0)
  
   'узнать имя переключёной расскладки клавиатуры
   GetKeyboardLayoutName strSwitched_Buffer
   MsgBox "Рассклад клавиатуры поменялся" & vbCrLf & _
      "из " & strCurrent_Buffer _
      & " в " & strSwitched_Buffer
     
   'вернуть начальную расскладку калвиатуры
   ActivateKeyboardLayout lngCurrent_HKL, 0

End Sub



--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0789 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.