Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Язык русский или английский


dj0n ©   (2005-11-03 16:45:00) 

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


Zeqfreed   (2005-11-03 18:57:00) [1]

dj0n ©   (03.11.05 18:18) [12]
Я скажу больше! [11] даже не компилируется! Какой ужас! А голова есть? Ну хотя бы чуть-чуть?

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private
   procedure WMLangChanged(var Msg : TMessage); message WM_INPUTLANGCHANGE;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

function GetActiveLayoutName() : String;
var
 buf : array[0..MAX_PATH] of Char;
 kl : hKL;
 l : Integer;
begin
 kl := GetKeyboardLayout(0);
 l := GetLocaleInfo(LoWord(kl), LOCALE_SLANGUAGE {LOCALE_SABBREVLANGNAME}, @buf, SizeOf(buf));
 if (l > 0) and (l <= SizeOf(buf)) then
  Result :=Copy(buf, 1, l)
 else
  Result := '';
end;

procedure TForm1.WMLangChanged(var Msg : TMessage);
begin
 Caption := GetActiveLayoutName;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 Caption := GetActiveLayoutName;
end;


Это работает?


dj0n   (2005-11-03 18:18:00) [2]

И так не работает


Leonid Troyanovsky   (2005-11-03 17:48:00) [3]


> dj0n ©   (03.11.05 17:45) [10]
> не работает


Win32Check(GetLocaleInfo(..) <> 0);
ShowMessage(AklName);

--
Regards, LVT.


dj0n   (2005-11-03 17:45:00) [4]

не работает


Leonid Troyanovsky   (2005-11-03 17:34:00) [5]


> dj0n ©   (03.11.05 17:26) [8]
> функция getkeyboardlayout возвращает число! а какое число
> русский и какое латинские???


var
 AklName: array [0..2] of Char;

     GetLocaleInfo( LoWord(ahkl),
                    LOCALE_SABBREVLANGNAME,
                    AklName,
                    SizeOf(AklName));


--
Regards, LVT.


dj0n   (2005-11-03 17:26:00) [6]

функция getkeyboardlayout возвращает число! а какое число русский и какое латинские???


Fay   (2005-11-03 17:09:00) [7]

2 dj0n ©   (03.11.05 17:03) [5]
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/keyboardinput/keyboardinputreference/keyboardinputfunctions/getkeyboardlayout.asp


Fay   (2005-11-03 17:09:00) [8]

Или просто
http://search.microsoft.com/search/results.aspx?qu=GetKeyboardLayout&View=msdn&st=b&c=0&s=1&swc=0


dj0n   (2005-11-03 17:03:00) [9]

в хелпе нет описания этой функции


dj0n   (2005-11-03 16:57:00) [10]

а можно более подробное онисание а то я не профи в делфи?! плиз


Amoeba   (2005-11-03 16:53:00) [11]


> dj0n ©   (03.11.05 16:51) [2]
> это что такое?

Как что? Функция.


dj0n   (2005-11-03 16:51:00) [12]

это что такое?


TUser   (2005-11-03 16:46:00) [13]

getkeyboardlayout


Наверх

Титульная страница Поиск, карта сайта Написать письмо