|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.12.2011, 10:22 | #1 |
Пользователь
Регистрация: 12.12.2010
Сообщений: 75
|
Как сменить раскладку клавиатуры
Здравствуйте, уважаемые господа.
Каким образом можно сменить раскладку клавиатуры в консольном приложении? Пробовал таким образом: LoadKeyboardLayout ("00000409", KLF_ACTIVATE | KLF_SETFORPROCESS); Ставил также "00010409" и "00020409". Раскладка появляется в списке доступных, но активной не становится. Почему? Пробовал также ActivateKeyboardLayout. Что не так? Заранее благодарю за возможные ответы. |
17.12.2011, 15:16 | #2 | |
Пользователь
Регистрация: 12.12.2010
Сообщений: 75
|
Почему-то не работает даже проверка на то, какая именно раскладка стоит у пользователя в данный момент.
Насколько я понял, делать это надо при помощи функции GetKeyboardLayout. http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx В качестве единственного параметра функции передаю значение 0, т.к. мне необходимо узнать раскладку именно для текущего потока. Читаем MSDN: Цитата:
HKL hk = GetKeyboardLayout (0); int lang = LOWORD (hk); Теперь смотрим сюда: http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx Для русской раскладки значение должно быть равно 0x0419. Следовательно, делаем проверку в программе: if (lang == 0x0419) { ... } Однако условие будет выполняться в любом случае, даже если раскладка клавиатуры в данный момент стоит англ. Что я делаю не так? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Менять раскладку клавиатуры програмно | Dark_Wolf | Общие вопросы Delphi | 0 | 07.11.2011 00:52 |
Изменить язык ввода (раскладку клавиатуры) при получении фокуса полем | SMShrek | Microsoft Office Access | 4 | 04.07.2011 09:42 |
Вывести на канву раскладку клавиатуры | phphel | Общие вопросы Delphi | 7 | 06.04.2011 13:02 |
Переключить раскладку клавиатуры. | SKYLINEGTR | Помощь студентам | 2 | 02.02.2011 00:50 |
как сменить ник ??? | maladoy | О форуме и сайтах клуба | 12 | 07.02.2009 19:45 |