منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : بعض الطرق المقترحة لترجمة البرنامج إلى أكثر من لغة
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
بعض الطرق المقترحة لترجمة البرنامج إلى أكثر من لغة



ألطريقه الأولى
عن طريق حفظ الجمل والكلمات في ملف TXT على شكل اسطر

كود :
[SIZE=4]
إغلاق البرنامج[/SIZE]

[SIZE=4]تهيئة قاعدة البينان[/SIZE]
[SIZE=4]إصلاح الجداول[/SIZE]
[SIZE=4]فتح ملف جديد[/SIZE]
[SIZE=4]إغلاق الملف الحالي[/SIZE]
[SIZE=4]....... إلى أخره[/SIZE]
واستدعاء السطر المطلوب عند الحاجة عن طريق الكود

كود :
[align=left][SIZE=4][FONT=&amp]TextBox1.Text = LoadLine([color=#A31515]"c:\1.txt"[/color], 4)[/FONT][/SIZE]
[/align]

ألطريقه الثانية
عن طريق حفظ الجمل والكلمات في ملف INI وهو تشبه ألطريقه الأولى ولأكن استدعاء الجملة عن طريق

كود :
[align=left][SIZE=4][color=blue][FONT=&amp]Dim[/FONT][/color][FONT=&amp] value [color=blue]As[/color] [color=blue]String[/color] = Space(255)[/FONT][/SIZE]

[SIZE=4][color=blue][FONT=&amp]Dim[/FONT][/color][FONT=&amp] filename [color=blue]As[/color] [color=blue]String[/color] = [color=#2B91AF]Application[/color].StartupPath & [color=#A31515]"\Settings.ini"[/color][/FONT][/SIZE]
[SIZE=4][FONT=&amp]GetPrivateProfileString([color=#A31515]"Form1"[/color], [color=#A31515]"[/color][/FONT] [color=#A31515][FONT=&amp]Button2"[/FONT][/color][FONT=&amp], [color=#A31515]""[/color], value, Len(value), filename)[/FONT][/SIZE]
[SIZE=4][color=#2B91AF][FONT=&amp]MessageBox[/FONT][/color][FONT=&amp].Show(value)[/FONT][/SIZE][/align]

ألطريقه الثالثة
وهى الأسرع في الأداء ولأكنها تأخذ مساحه كبيره من الذاكرة
وهى حفظ الجمل في ملف نصي على شكل متغيرات [FONT=&amp]String[/FONT] ويتم تنفيذ الملف بالكامل وقت إقلاع البرنامج . ويتم استدعاء المتغير وقت الحاجة .


ألطريقه الرابعة
وهى عن طريق خاصية في خصائص الفورم Localizable شرح ليها على هذا الرابط


مقال- كيف تترجم برنامجك وتجعله عالميا (Raggi Tech)


هذه ألطريقه جميله لاكنها عيوبها كثير من هذه العيوب إذا حبيت تعرف لو محبتش عدى هذه الجزئية

1 – يجب التعديل على جميع أجزاء البرنامج والكائنات من بطن وليبل و و و كائن كائن بخلاف الطرق السابقة فانك تصنع ملف نصي واحد فقط باللغة التي تحب وفى نهاية مشروعك ارفع لجوجل يترجمه لو عايز حتى 100 لغة في دقيقه واحده دون عناء
2 – هذه ألطريقه تحفظ جميع التغيرات مثل الحجم والصور وأشياء كثير اجبارى مما يجعل أدائها إبطاء
3 – لا يمكن التحكم فيها أثناء عمل البرنامج
4 – أنت من يصنع اللغات الخاصة به لا يمكن لأحد مساعدتك في الطرق السابقة اصنع أنت ثلاث أو أربع لغات واترك للعالم التطوير
5 – عند تعديل جمله معينه فانك يجب ان تعدلها من داخل المشروع نفسه بخلاف السابقة فانك تعدل على الملفات في اى وقت
ومشاكل كثير لا أريد أن أطيل عليكم
وهى ليست كافيه لأنك ستحتاج معها إلى إحدى الطرق من اجل الجمل التي ستظهر في الرسائل مثلا [FONT=&amp]MessageBox[/FONT]



وانأ ألان اختبر الطرق الخاصة بالملفات النصية الأولى والثانية لمعرفة الأسرع في أدائها




أما ألان أريد من أهل الخبرة نصحي ما هي ألطريقه المتبعة في هذا الأمر وبماذا تنصحوني
نحمده ونصلي على رسوله الكريم

جزيت خيرا على الموضوع، أرى أن أفضل طريقة لترجمة البرنامج هي استخدام ملفات (ini) أو استخدام ملفات (xml)، المميزات كثيرة عند استخدام احد هذين النوعين من الملفات، منها: سرعة الأداء، سهولة التعديل، القدرة على إضافة ترجمات أخرى... وغيرها من المميزات.
DreamsDotNet كتب :نحمده ونصلي على رسوله الكريم

جزيت خيرا على الموضوع، أرى أن أفضل طريقة لترجمة البرنامج هي استخدام ملفات (ini) أو استخدام ملفات (xml)، المميزات كثيرة عند استخدام احد هذين النوعين من الملفات، منها: سرعة الأداء، سهولة التعديل، القدرة على إضافة ترجمات أخرى... وغيرها من المميزات.

صلى الله عليه وعلى اله وصحبه وسلم
وجزاك خير الجزاء
كلام سليم وفعلا XML ايضا لاكنها تحتاج الى قليل من الخبره بعكس ini
السلام عليكم ورحمة الله وبركاته

جات علي بالي هذه الفكرة :

كود :
'Button1        '
        Me.Button1.Location = New System.Drawing.Point(40, 55)
        Me.Button1.Name = "Button1"
        Me.Button1.Size = New System.Drawing.Size(75, 23)
        Me.Button1.TabIndex = 0
        Me.Button1.Text = "زر|Button".Split("|")(1)
        Me.Button1.UseVisualStyleBackColor = True
        '
        'Label1
        '
        Me.Label1.AutoSize = True
        Me.Label1.Location = New System.Drawing.Point(37, 97)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(62, 13)
        Me.Label1.TabIndex = 1
        Me.Label1.Text = "عنوان|Label".Split("|")(1)
        '
        'CheckBox1
        '
        Me.CheckBox1.AutoSize = True
        Me.CheckBox1.Location = New System.Drawing.Point(40, 124)
        Me.CheckBox1.Name = "CheckBox1"
        Me.CheckBox1.Size = New System.Drawing.Size(132, 17)
        Me.CheckBox1.TabIndex = 2
        Me.CheckBox1.Text = "علامة اختيار|CheckBox".Split("|")(1)
        Me.CheckBox1.UseVisualStyleBackColor = True
        '
'[/CODE]

الكود أعلاه مأخوذ من الـ Form1.Designer.vb

هل هي عملية وسريعة ؟


****
***
**
*
kslawy كتب :السلام عليكم ورحمة الله وبركاته

جات علي بالي هذه الفكرة :

كود :
'Button1        '
        Me.Button1.Location = New System.Drawing.Point(40, 55)
        Me.Button1.Name = "Button1"
        Me.Button1.Size = New System.Drawing.Size(75, 23)
        Me.Button1.TabIndex = 0
        Me.Button1.Text = "[color=#ff0000]زر[/color]|Button".Split("|")(1)
        Me.Button1.UseVisualStyleBackColor = True
        '
        'Label1
        '
        Me.Label1.AutoSize = True
        Me.Label1.Location = New System.Drawing.Point(37, 97)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(62, 13)
        Me.Label1.TabIndex = 1
        Me.Label1.Text = "[color=#ff0000]عنوان[/color]|Label".Split("|")(1)
        '
        'CheckBox1
        '
        Me.CheckBox1.AutoSize = True
        Me.CheckBox1.Location = New System.Drawing.Point(40, 124)
        Me.CheckBox1.Name = "CheckBox1"
        Me.CheckBox1.Size = New System.Drawing.Size(132, 17)
        Me.CheckBox1.TabIndex = 2
        Me.CheckBox1.Text = "[color=#ff0000]علامة اختيار[/color]|CheckBox".Split("|")(1)
        Me.CheckBox1.UseVisualStyleBackColor = True
        '
'[/CODE]

الكود أعلاه مأخوذ من الـ Form1.Designer.vb

هل هي عملية وسريعة ؟


****
***
**
*

جزاك الله خير
بس الفكره مش فى كتابة جميع الجمل اثناء تصميم البرنامج فى السورس كود
الفكره فى جعل اللغه الخاصه ببرنامج (الكلمات والعبارات) منعزله انعزال تام عن السورس كود الخاص بك

انا الحمد لله وصلت لمرحله كويسه
وباذن الله سيتم عمل شرح وافى للفكره فى قسم المقلات
لان الموضوع طويل فظن الاخوه انه شرح ههههههه لاكنه للاسف استفسار مش شرح