تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
درس سريع - اللغة العربية في فيجوال بيسك
#1
كاتب الموضوع : أحمد جمال

بسم الله الرحمن الرحيم .

التعريب في فيجوال بيسك .

إن برنامج فيجوال بيسك هو في الأصل مصمم للبرمجة بأغلب اللغات المشهورة ، ولكن طرق العرض تظل باللغة الانجليزية أو الضبط بأسلوب عرض البيانات من اليسار إلى اليمين .

في الاصدارات الأخيرة من VB تمت اضافة خاصية جميلة لأغلب الأدوات ، وهي RightToLeft ، والتي تحتوي على قيمتين منطقيتين True,False ، وذلك لتحويل نسق الكتابة في تلك الأدوات إلى النسق العربي - اليمين إلى اليسار لمزيد من الدقة حيث أن هناك لغات أخرى تكتب من اليمين إلى اليسار - ، والذي يضع علامات الترميز على يسار النص ، وليس اليمين كما هو الحال مع اللغة الانجليزية .
وبنفس الطريقة ، فسوف تتحول أشرطة التمرير إلى الجهة المقابلة ، ولكن ورغم تطبيق هذه الخاصية على الفورم Form فسيظل صندوق الأدوات ( خروج - تكبير - تصغير ) في موقعه السابق في اللغة الانجليزية .
وهذا مثال بسيط على قصور خاصية RightToLeft ، اضافة إلى أنها غير مدعومة في بعض الأدوات ، ولذا توجد حلول بديلة أخرى منها تقنية المرآة Mirroring والتي ظهرت منذ نظام التشغيل 98 ، وهي ببساطة إحدى دوال API التابعة لويندوز .
تقوم هذه التقنية بفعل المرآة تماماً ، حيث ينعكس اتجاه الأشياء ، وينعكس كل ما يترتب عليها ، فمثلاً ستتناقص الاحداثيات x,y عند التحرك إلى اليمين والأسفل على عكس السابق .
وهناك بعض الخصائص الخاصة بمثل هذا الأمر والتي تمنع عكس النصوص وغيرها .
ولكن في برنامج صغير ، فلا أتوقع انه من المجدي تكبد هذا العناء ... ولكن يمكن استخدام خاصية RightToLeft كبديل ناجح إلى حد بعيد .


عمل رسائل Msgbox عربية .

لا تحتوي ال Msgbox على خاصية RightToLeft بالصورة الطبيعية ، بل تحتوي على قيمتين تؤديان إلى تعريب الرسالة ، وهما 524288 و 1048576 .
ويقابلهما الثابتان :

vbMsgBoxRight و vbMsgBoxRtlReading

بهذا نكتب أمر الرسالة بالشكل التالي :

كود :
MsgBox "أحمد جمال .", vbInformation + vbMsgBoxRight + vbMsgBoxRtlReading,"اللغة العربية"


لمزيد من الاختصار . لن نضطر في كل مرة لاظهار رسالة أن نكتب الثابتين السابقين أو الرقمين .لذا فإن بامكاننا تعريف Enum وذلك لاعطاء هذين الثابتين اسماً آخر ، وذلك بالشكل التالي :

كود :
Public Enum Ahmed
arabic = vbMsgBoxRight + vbMsgBoxRtlReading
End Enum

ويمكننا أن نقوم بكتابة الأمر السابق في موديول وذلك لاستخدامه في جميع الشاشات .
لاحقاً . يمكن استخدام كلمة arabic لتقوم بالمهمة مباشرة .
لذا تصبح الرسالة التي تظهر كلمة المرور والتي وضعناها في الدرس السابق بالشكل التالي :
MsgBox "أحمد جمال .", vbInformation + arabic,"اللغة العربية"

*** شكر خاص جداً لأخي رغيد الطيب من vb4arab حيث أنني استفدت من فكرة عمل Enum للرسائل العربية من أحد برامجه .

والله الموفق ...
والسلام عليكم ورحمة الله وبركاته .
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  طريقة تشغيل فيجوال بيسك6 على وندوز7 ahmed3d 5 1,427 10-12-15, 03:08 AM
آخر رد: awidan76
  كيفية التعامل مع دوال الوقت و التاريخ و كيفية تنسيقهما فى الفجوال بيسك 6 the viper 6 1,892 15-06-13, 08:17 PM
آخر رد: husain1980
  شرح للمتغيرات و الثوابت و المعاملات في الفيجول بيسك Ahmad Jawad 5 2,358 12-06-13, 01:14 AM
آخر رد: بلحسين الدين
  استخدام DataControl للربط مع قواعد البيانات في فيجوال بيسك - الجزء الثاني RaggiTech 1 1,924 14-10-12, 02:29 PM
آخر رد: RaggiTech
  استخدام DataControl للربط مع قواعد البيانات في فيجوال بيسك - الجزء الأول RaggiTech 0 1,167 14-10-12, 02:26 PM
آخر رد: RaggiTech
  استخدام أداة التقارير DataReport من خلال الفيجوال بيسك 6.0 RaggiTech 0 2,095 14-10-12, 02:21 PM
آخر رد: RaggiTech
  درس سريع - التعامل مع الآسكي Ascii RaggiTech 0 994 14-10-12, 02:21 PM
آخر رد: RaggiTech
  درس سريع - للمبتدئين التعامل مع App.path لتثبيت المسار RaggiTech 1 863 14-10-12, 02:18 PM
آخر رد: RaggiTech
  فيجوال بيسك - التعامل مع قاعدة بيانات أكسيس من خلال Dao - الجزء الثالث والرابع RaggiTech 1 2,187 14-10-12, 02:11 PM
آخر رد: RaggiTech
  فيجوال بيسك - التعامل مع قاعدة بيانات أكسيس من خلال Dao - الجزء الأول والثاني RaggiTech 1 3,654 14-10-12, 02:06 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم