مشاهدة النسخة كاملة : لتحويل الكتابة من لغة إلى أخرى في دلفي.
delphi4ever
07-02-2008, 11:06 PM
السلام عليكم ورحمة الله تعالى وبركاته.:)
هذا مثال بسيط حول تحويل الكتابة في لوحة المفاتيح (KeyBorad) بواسطة دلفي:;)
لتحويل الكتابة إلى اللغة العربية: AR
LoadKeyboardLayout('00000401',klf_activate);
لتحويل الكتابة إلى اللغة الإنجليزية: EN
LoadKeyboardLayout('00000409',klf_activate);
لتحويل الكتابة إلى اللغة الروسية: RU
LoadKeyboardLayout('00000419',klf_activate);
مـــــوفقين إن شاء الله.
professor DeXTeR
10-02-2008, 09:52 PM
الله يثيبك على مجهودك ..
تحياتي لك دلفي للأبد
bsm12
16-02-2008, 08:18 AM
السلام عليكم
من الامثلة السابقة يتضح ان لكل لغة كود اي
العربية ---------00000401
الانكليزية ---------00000409
ممكن بعض الاكزاد للغات أخري كالفرنسية مثلا
infore
07-06-2008, 05:59 PM
بارك الله فيك أخي على المعلومات القيّمة, فعلا قيّمة
AL-MOB4RM3G
25-11-2008, 11:26 AM
صحيح اخي ان الموضوع قديم شوي
الى ان النفع منه كثير
لكن من اين آتي بأرقام اللغات ؟
يعني مثلا الكيبورد السويدي...
كيف اعرف رقمه وكوده ؟
الله يكرمكم
لكن من اين آتي بأرقام اللغات ؟
يعني مثلا الكيبورد السويدي...
كيف اعرف رقمه وكوده ؟
الله يكرمكم
من هذا الرابط إضغط هنا (http://www.microsoft.com/globaldev/reference/win2k/setup/lcid.mspx)
AL-MOB4RM3G
27-11-2008, 11:10 AM
من هذا الرابط إضغط هنا (http://www.microsoft.com/globaldev/reference/win2k/setup/lcid.mspx)
بارك الله لك اخي على الرابط
مشكووراخوي على المعلومه المفيده
افدتنابها كوني مبتدئه
يعطيك العافيه
AvimimuS
23-12-2008, 11:38 AM
بارك الله فيك
انشاء الله يستفيد الكثير
بالتوفيق لك
AvimimuS
23-12-2008, 11:42 AM
السلام عليكم
من الامثلة السابقة يتضح ان لكل لغة كود اي
العربية ---------00000401
الانكليزية ---------00000409
ممكن بعض الاكزاد للغات أخري كالفرنسية مثلا
الفرنسية 00000409
ان اردت اكواد جميع الغات راجع الموقع الذي وضعه الاخ
مؤمن ملك
07-02-2009, 09:19 PM
الف شكر افادك الله
فعلاً عبقرى
kachwahed
14-08-2010, 03:14 PM
لتحديد لغة إقليمية معينة من خلال ثوابت معرفة في Windows.pas يمكن استخدام الـ Macro الذي يعيد الرمز التعريفي للغة:
#define MAKELANGID(p, s) ((((WORD) (s)) << 10) | (WORD) (p))
المصدر:
http://msdn.microsoft.com/en-us/library/bb202928.aspx
في دلفي:
function MAKELANGID(usPrimaryLanguage, usSubLanguage: LANGID): WORD;
begin
Result := (usSubLanguage shl 10) + usPrimaryLanguage;
end;
usPrimaryLanguage: تأخذ اللغة المستخدمة نستخدم: LANG_ARABIC/LANG_ENGLISH
usSubLanguage: تأخذ إقليم اللغة: SUBLANG_ARABIC_SYRIA/SUBLANG_ARABIC_EGYPT
لتسهيل الاستخدام نعيد كتابته في تابع يعيد string عوضا عن Word
ونستخدم TSpeedButton كزر للتغيير لأنه لا يغير موضع المؤشر (Cursor Focus). المثال:
function GetLangID(usPrimaryLanguage, usSubLanguage: LANGID): string;
begin
Result := IntToHex((usSubLanguage shl 10) + usPrimaryLanguage, 8);
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
LoadKeyboardLayout(pchar(GetLangID(LANG_ARABIC, SUBLANG_ARABIC_SAUDI_ARABIA)), KLF_ACTIVATE);
end;
بقية الثوابت معرفة في Windows.pas.
vBulletin® v3.8.6, Copyright ©2000-2010, TranZ by Almuhajir