Какой язык на данный момент на клавиатуре?

Previous  Top  Next

    
 

 

Используй GetKeyboardLayoutName

 

Автор ответа: Mikel

©Drkb::01953

Взято с Vingrad.ru http://forum.vingrad.ru


 

Code:

var

{©Drkb v.3(2007): www.drkb.ru}

 

Form1: TForm1;

LAYOUT: String;

implementation

{$R *.DFM}

 

procedure TForm1.Button1Click(Sender: TObject);

var

RA: Array[0..$FFF] of Char;

begin

GetKeyboardLayoutName(RA) ;

Layout := StrPas(RA);

if Layout = '00000419' then

showmessage(' CCCP ' )

else

if Layout = '00000409' then

   showmessage(' USA ' )

else

   showmessage(' X 3 ' ) ;

end;

 

©Drkb::01954

Автор: Radmin

 

Взято с Vingrad.ru http://forum.vingrad.ru

 


 

Code:

function WhichLanguage:string;

var

ID:LangID;

Language: array [0..100] of char;

begin

ID:=GetSystemDefaultLangID;

VerLanguageName(ID,Language,100);

Result:=String(Language);

end;

 

Пример вызова этой функции:

 

Code:

procedure TForm1.Button1Click(Sender: TObject);

begin

Edit1.Text:=WhichLanguage;

end;

 

 

Также, для определения активного языка можно воспользоваться функцией GetUserDefaultLangID.

©Drkb::01955

Взято из http://forum.sources.ru