Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Вниз

Раскладка клавиатуры   Найти похожие ветки 

 
Broot   (2002-02-01 11:57) [0]

Подскажите, как сделать в своей проге индикатор раскладки клавиатуры. Существует ли системное событие, связанное с переключением раскладки? Существует функция GetKeyboardLayoutName, но не хотелось бы опрашивать состояние клавы по таймеру.


 
IronHawk   (2002-02-01 12:13) [1]

Узнаешь по каким кнопкам в системе меняеться раскладка и опрашивай GetKeyboardLayoutName при нажатиях на эти клавиши!
и при приёме и передаче фокуса в проге и самой проге !


 
Chris   (2002-02-01 13:33) [2]

>Broot

Не хочешь опрашивать по таймеру - опрашивай по Form1.OnKeyUp и Form1.OnMouseMove.

Но тормозить, наверно, будет страшно...


 
Broot   (2002-02-01 13:41) [3]

Если форма не активна в данный момент, но видна на экране, то такие способы не прокатят.


 
dimich   (2002-02-01 15:07) [4]

function GetLanguage: string;
var
p: PChar;
begin
GetMem(p, KL_NAMELENGTH);
try
GetKeyboardLayoutName(p);
Result := p;
finally
FreeMem(p, KL_NAMELENGTH);
end;
end;

////Где то там////
slan:=GetLanguage;
if slan="00000409" then Panel2.Caption:="En";
if slan="00000419" then Panel2.Caption:="Ru";



 
Broot   (2002-02-01 17:06) [5]

Dimich, спасибо конечно, но как это мне может помочь?


 
Dimka Maslov   (2002-02-01 17:34) [6]

При смене языка форма получает сообщения WM_INPUTLANGCHANGEREQUEST/WM_INPUTLANGCHANGE


 
Victor   (2002-02-11 08:37) [7]

можно ещё проще
{English} LoadKeyboardLayout("00000409", KLF_ACTIVATE);
{Russian} LoadKeyboardLayout("00000419", KLF_ACTIVATE);и так любой язык только посмотри в реестре какой код присваивать


 
limon   (2002-02-11 15:22) [8]

С полгода назад уже выкладывал класс по работе с клавиатурой, но куда-то он делся.
Раз вопросы начали подниматься снова, выкладываю в кладовку еще раз.


 
BOS   (2002-02-12 13:12) [9]

Dimka Maslov, а неподскажешь, как сделать так, чтобы эти сообщения получала неактивная форма (или скрытая в трэе, наподобие известных прграмм переключения раскладок клавиатуры)



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.018 c
1-26199
vap
2002-04-25 16:45
2002.05.09
Несовместимость с XP?


14-26240
Shadow
2002-03-31 13:23
2002.05.09
DelphiGFX->Форум


1-26110
AlexanderSK
2002-04-23 17:17
2002.05.09
Перемещение TPanel


1-26125
ruslan_as
2002-04-24 10:07
2002.05.09
цикл


1-26121
MegaVolt
2002-04-24 10:31
2002.05.09
---|Ветка была без названия|---





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский