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

Вниз

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

 
ASGroup   (2002-06-22 23:10) [0]

Как получить текущую раскладку клавиатуры
А потом из неё получить её имя (например "Английский США" ) или Название в системе (типа "00000409")


 
Proton   (2002-06-23 04:05) [1]

Вообще текушая берется вот так.
const Lang_RU = $4190419;//68748313
Lang_ENG = $4090409;//67699721
begin
RxSwitch_lang.StateOn := GetKeyboardLayout(GetCurrentThreadId)=LANG_RU;
RxSwitch_caps_lock.StateOn := not GetKeyState(VK_CAPITAL) and 1 = 0;
end;

ну а имя ее вот так (только не ее а текущей)
GetKeyboardLayoutName(
Ну а вообще RTFM


 
Юрий Зотов   (2002-06-23 08:10) [2]

Примерно так:


var
S: string;
...
SetLength(S, KL_NAMELENGTH + 1);
if GetKeyboardLayoutName(@S[1]) then
with TRegistry.Create do
try
RootKey := HKEY_LOCAL_MACHINE;
if OpenKeyReadOnly("\System\CurrentControlSet\Control\Nls\Locale")
then S := ReadString(S)
else S := ""
finally
Free
end
else S := "";



 
Игорь Шевченко   (2002-06-24 09:55) [3]

Или так :

{
HSGetLocaleLanguageName - Определение названия языка Locale, аналогичного тому, который появляется в окне индикатора клавиатуры.
}

{ Для определения языка в NT-системах предпочтительней вызывать Unicode-версию
GetLocaleInfo }
function HSGetLocaleLanguageName (Locale : Cardinal) : String;
var
tmp : array[0..255] of char;
tmpW : array[0..255] of WideChar;
begin
if HSQuerySystemInfo(hsiNTPlatform) then begin
GetLocaleInfoW(Locale, LOCALE_SLANGUAGE, tmpW, SizeOf(tmpW));
Result := WideCharToString(tmpW);
end else begin
GetLocaleInfo(Locale, LOCALE_SLANGUAGE, tmp, SizeOf(tmp));
Result := tmp;
end;
end;

Имя текущей раскладки:

HSGetLocaleLanguageName(LOWORD(GetKeyboardLayout(0)));

С уважением,



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

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

Наверх





Память: 0.44 MB
Время: 0.009 c
1-14157
KAV
2002-08-23 23:15
2002.09.05
Отображение полных строк в DropDown


3-13966
RDA
2002-08-16 10:07
2002.09.05
Структура базы данных в 1С


1-14153
Lamer86
2002-08-24 21:32
2002.09.05
TStrings


1-14143
Helg
2002-08-23 20:39
2002.09.05
Как сохранить TImageList в файле?


1-14169
Lamer86
2002-08-25 17:56
2002.09.05
DirectoryExists





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский