Как активировать разные клавиатуры

Вы можете указать, какие типы экранных клавиатур будут отображаться. Используйте любой из следующих способов.

Способ 1

Измените параметр реестра KeyboardName в разделе HKEY_CURRENT_USER\Software\ComfortSoftware\hvk из своей программы.

Если экранная клавиатура отображается, отправьте сообщение Windows PostMessage(FindWindow('TFirstForm', 'hvkFirstForm'), WM_CSKEYBOARD, 1, 0), и наше приложение перезагрузит экранную клавиатуру.

Способ 2

Скачайте этот файл: https://hotvirtualkeyboard.ru/files/SetNameKB.exe

Формат команды: SetNameKB.exe "имя клавиатуры"

Пример:
SetNameKB.exe Mini

Способ 3

Для смены клавиатуры можно использовать сообщения Windows.

Пример:
char KeyboardName[80]; 
COPYDATASTRUCT MyCDS; 

  KeyboardName = "Standard"; 
// Fill the COPYDATA structure 
// 
  MyCDS.dwData = 1;          // function identifier 
  MyCDS.cbData = sizeof( KeyboardName );  // size of data 
  MyCDS.lpData = &KeyboardName;           // data structure 
// 
// Call function, passing data in &MyCDS 
// 
  HWND hwDispatch = FindWindow( "TFirstForm", "hvkFirstForm" ); 
  if( hwDispatch != NULL ) 
    SendMessage( hwDispatch, 
      WM_COPYDATA, 
      (WPARAM)(HWND) NULL, 
      (LPARAM) (LPVOID) &MyCDS ); 

Активация разных экранных клавиатур

Активация разных виртуальных клавиатур


Смотрите также

Как переключаться между несколькими экранными клавиатурами