PDA

نسخه کامل مشاهده نسخه کامل : تغيير زبان صفحه كليد در دلفي



hashem_te
08-05-2006, 09:24
مي خواهيم وقتي كه يك كنترل متني روي فرم فوكوس را در اختيار ميگيرد زبان صفحه كليد به طور اتوماتيك به زبان مشخصي مثلا فارسي تغيير وضعيت بدهد
در صورت امكان پاسخ خود را به آدرس ميل من بفرستيد
hashemi-te@esfahansteel.com

heydar110
08-05-2006, 11:02
با استفاده از اين كد وقتي فرم ساخته ميشه زبان به فارسي تبديل ميشه.ههو يا علي مدد
procedure TForm1.FormCreate(Sender: TObject);
begin
LoadKeyboardLayout('00000429',KLF_ACTIVATE)
end;

NoneForce
08-05-2006, 13:05
سلام
البته قبلش بايد مطمئن باشيد كه زبان فارسي روي دستگاه نصب شده است

soldier
27-05-2006, 18:52
از آموزش های شما متشکرم.

nasim1984
18-10-2006, 10:16
نمیشه جواب نمیده

nasim1984
18-10-2006, 10:26
جواب داد با تویonshow form بگذاریم نه oncreat

SunCo
26-10-2006, 13:37
من از این روال در OnEnter هر Edit استفاده می کنم و تا حالا جواب گرفته ام .

procedure SetFarsi;
var LName:pchar;
FLAYOUT:pchar;
begin
getmem(LName,30);
GetKeyboardLayoutName(LName);
if LName<>FLAYOUT then
Activatekeyboardlayout(HKL_NEXT,KLF_REORDER);
end;

منبع : ؟؟؟؟؟
تست شده : دلفی 7 و WinXP

flashdes
27-10-2006, 09:22
LoadKeyboardLayout('00000429',KLF_ACTIVATE)
این دستور اصلی هست که استاندارد شده
اینو مثلا تو onenter ادیت باکست بذار درست میشه
برای زبان انگلیسی بجای 00000429 باید 000000409 بذاری
حله

amir_dpr
27-10-2006, 18:53
LoadKeyboardLayout('00000429',KLF_ACTIVATE);
//00000429 FA
//00000409 EN

H_T_O_A
11-11-2006, 14:47
اساتید درست میگن
;(LoadKeyboardLayout('00000429',KLF_ACTIVATٍE
البته عدد 00000429 برای فارسی شدن و 00000409 هم برای انگلیسی شدنه که باید تو onshow فرم اصلیت با همون فرم اولیت بنویسیش.

teeiq
12-11-2006, 10:07
سلام
دست شما درد نکنه با آموزش این نکات ریز