Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.09.2013, 09:58
valvl63 valvl63 вне форума
Прохожий
 
Регистрация: 26.12.2012
Сообщения: 30
Репутация: 10
По умолчанию

Привет.

Нужно вывести раскладку клавы на форму программы.
Вот код:

Код:
procedure TForm1.LangChange(var message: TMessage);
var
  BufName: array[0..KL_NAMELENGTH-1] of Char;
begin
  GetKeyboardLayoutName(@BufName);
  case Lo(StrToInt('$'+String(BufName))) of
  LANG_RUSSIAN  : Label1.Caption:='RL'; 
  LANG_ENGLISH  : Label1.Caption:='EN';

  else Label1.Caption:=' ';
  end;

end;

Что-то в моей проге с фаршем не работает.
А вот если делать прогу с чистого листа - работает.
Не могу понять, что я делаю не так.
На какие вопросы мне обращать внимание?
Подсобите пожалуйста.

Частично нашел причину.
Если прописываю Edit1.SetFocus, не работает вывод клавиатуры.
Даже если, потом, удаляю фокус.
Интересно, что там включается?

Почему не работает код если кидать на форму edit или
button и т. д. - вопрос открыт.
Конечно, немного попотевши, решил проблему для своей проги через таймер.

Последний раз редактировалось M.A.D.M.A.N., 27.09.2013 в 20:45.
Ответить с цитированием
  #2  
Старый 29.09.2013, 00:16
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

А если так
Код:
case GetKeyboardLayout(GetWindowThreadProcessId(GetForegroundWindow, nil)) of
67699721: Label1.Caption:='EN';
68748313: Label1.Caption:='RL'; 
else Label1.Caption:=' ';
end;
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
valvl63 (30.09.2013)
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 22:32.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter