[ ik0 @ 09.07.2010. 18:55 ] @
Kako promeniti jezik pritiskom na neki button...probao sam sa ovim ActivateKeyboardLayout(LoadKeyboardLayout('xxxxxxxx',KLF_ACTIVATE), 0) al nefunkcionise.
xxxxxxxx je "broj" jezika. Hvala puno pooz
[ ik0 @ 09.07.2010. 23:18 ] @
Eto snasao sam se...ako nekome nekada zatreba a ne zna (kako mene) kod izgleda ovako


Code:
LoadKeyboardLayout("0000042F",KLF_ACTIVATE);
//0000042F e Keybord kod za MKD podrska


ovde mozete da nadjete Keybord kodove http://msdn.microsoft.com/en-us/library/dd318693(v=VS.85).aspx
zaboravio sam da napomenem, ovaj kod dodaje jezik iako ga nemate instalirano. E sada dok sam ja isprobavao t.e nasao koi je kod onog jezika koi mi je trebao nadao sam hrpu jezika i sada nemogu nikako da ih ispobrisem :) pa ako neko procita ne bi bilo lose da mi napise funkciju skojom se brisu i pritom da napise kako bi bilo samo da napravim promenu a ne load. Hvala







[Ovu poruku je menjao ik0 dana 10.07.2010. u 01:06 GMT+1]
[ Mihajlo Cvetanović @ 30.09.2010. 18:37 ] @
Baš se ovim bavim, pa rekoh da dodam par informacija. Ako ne želiš da dodaješ nove jezike onda imaš GetKeyboardLayoutList koja vraća samo one jezike koji su dostupni, pa neki od njih aktiviraš sa ActivateKeyboardLayout. Ako želiš da dodaš jezik onda posle LoadKeyboardLayout treba da ide UnloadKeyboardLayout, ali samo ako si zaista učitavo novu tastaturu. To možeš da saznaš tako što bi pozvao GetKeyboardLayoutList pre i posle poziva LoadKeyboardLayout, pa ako se broj tastatura povećao onda znači da je zaista učitana nova tastatura.

E sad ono što mene trenutno zeza je što ne mogu da odaberem odgovarajući lejaut tastature ako je više tastatura instalirano za jedan jezik. Sa GetKeyboardLayoutList se lepo vide svi lejauti, ali kompjuter za svaki jezik prosto pamti poslednju tastaturu koju je korisnik odabrao u bilo kojoj aplikaciji, i tu tastaturu mi aktivira, iako ja tražim neku treću.

Evo da ilustrujem. Na kompu su mi trenutno instalirani

04090409 engleski jezik
0c1a0c1a srpska ćirilica
081a081a srpska latinica sa latiničnom tastaturom
0409081a srpska latinica sa engleskom tastaturom

Ako ja pozovem ActivateKeyboardLayout sa 081a081a onda ću aktivirati ili 081a081a ili 0409081a, zavisno od toga koja je tastatura prethodno bila odabrana u bilo kojoj aplikaciji. Znači mogu da odaberem jezik, ali ne i tastaturu. Zna li neko u čemu je fora?