الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برنامج صغير فيه عدة امثلة مفيدة

مغلق
بدأه محمد سامر أبو سلو في 18 ديسمبر 2005 · 18 رد · 3,988 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أرفق لكم السورس كود الكامل لبرنامج اسمه ListFolderTree

وهو يعتبر أول تجربة متكاملة أقوم بها على 2005

البرنامج يفيد كمثال لبعض الأشياء في الفيجول بايزيك مثل:

1- عمل برامج ثنائية الواجهة عربي/انكليزي و التنقل بين الواجهتين بسهولة

2 - قراءة شجرة المجلدات والملفات الكاملة لقرص أو مجلد معين

3 - استخدام Progress Bar

4 - حفظ البيانات إلى ملفات نصية وقراءتها منها

5 - حفظ الإعدادات إلى الريجستري وقراءتها منه

6 - استخدام open Dilaog و Save Dialog

7 - استخدام error provider

8 - استخدام LinkLabel لتوفير وصلة للبريد الالكتروني أو لعنوان موقع

أرجو أن تجدوه مفيدا - منتظر أراءكم وما قد تجدوه من تعديلات مفيدة للجميع على الكود

ListFolderTree.zip

تم تعديل هذه المشاركة بواسطة samerselo في 18 ديسمبر 2005 في 00:43

1

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#2

شكرا لك اخي samerselo

برنامج جميل , اتمنى الجميع ان يستفيدوا منه

get-4-2008-emk00cr6.png

للمراسلة : BG.W@hotmail.com

BG.WALEED@yahoo.com

#3

جزاك الله خيرا

#4

شكرا لكم للمرور والردود

وأي استفسار حول الكود بحاول جاوب قدر الامكان

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#6

مشكور أخي البرنامج أكثر من رائع بس ممكن استفسر عن الألية التي استخدمتها بالواجهتين العربي والانكليزي هل عملت فورمين واحد عربي وواحد انكليزي..

يا ريت لو شرحتها لنا واكون لك شاكر لأنها لازمتني كتير بمشروعي..

وشكرا.

لا إله إلا الله العظيم الحليم,لا إله إلا الله رب العرش العظيم,لا إله إلا الله رب السموات ورب الأرض ورب العرش الكريم.

#7

لا موضوع عمل واجهتين عربي/انكليزي أبسط مما تتصور رح اشرح بشكل عام وانت بعدين ممكن تتابع بالكود

1 - صمم البرنامج بشكل طبيعي وانهي اختباره بشكل جيد وبعد أن تصل للنسخة النهائية وقتها بيصير وقت نشتغل على الواجهتين

2- في خاصية للفورم اسمها Loaclized منغير قيمتها إلى True

3 - من خاصية Language اختر اللغة التي تريد Arabic مثلا ثم أعد ترتيب العناصر الموجودة وتغيير خصائصها وتسمياتها بحسب اللغة العربية ثم احفظ مشروعك ثم انتقل للغة الثانية English مثلا وأعد نفس العملية ثم احفظ مشروعك

4 - الآن يمكننا التنقل بين الواجهتين بسهولة بتغيير الـ Culture للـ CurrentThread وذلك بتغييرها قبل تحميل الفورم وذلك في الحدث Startup الخاص بـ Application

ولرؤية كيف يعمل الكود والكودات التفصيلية راجع كود البرنامج المرفق

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#8

نسيت شغلة اذا عم تشتغل على مشروع جديد يمكنك الوصول إلى Application Events كي تستطيع العمل ضمن الحدث Startup الخاص بـ Application من خصائص المشروع يوجد زر View Application Events

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#9

تتمة لجوابي للأخ طارق حول تغيير الواجهة عربي/انكليزي سأقوم بشرح الكود المتعلق بسؤاله

اليكم الكود من البرنامج المرفق وسأشرح المقاطع الهامة

        My.Computer.Registry.CurrentUser.CreateSubKey(SettingsKey)
        Dim MyKey As Microsoft.Win32.RegistryKey = My.Computer.Registry.CurrentUser.OpenSubKey(SettingsKey, True)

        If ArabicToolStripMenuItem.Checked = False Then
            ArabicToolStripMenuItem.Checked = True
            EnglishToolStripMenuItem.Checked = False
            MyKey.SetValue("Program Language", "Ar")
        Else
            ArabicToolStripMenuItem.Checked = False
            EnglishToolStripMenuItem.Checked = True
            MyKey.SetValue("Program Language", "En")
        End If
        MyKey.SetValue("Folder Path", FolderPath.Text)
        MyKey.SetValue("Dest File Name", DestFile.Text)
        FolderTree.Text = ""
        AppRestart = True
        Application.Restart()
        MyKey.Close()

السطرين الأوليين أقوم بإنشاء مفتاح في الريجستري لتخزين إعدادات لغة الواجهة

ثم ضمن علاقة if بعد أن أقوم باختباراتي حسب طبيعة برنامجي أقوم بتخزين إعدادات لغة الواجهة في الريجستري

ثم أستخدم الأمر Application.Restart() لإعادة تشغيل البرنامج حتى يستطيع أخذ الواجهة الجديدة لأنه لن تسري إعدادات اللغة حتى نقوم بإعادة تحميل الفورم

هذه هي الخطوة الأولى

تم تعديل هذه المشاركة بواسطة samerselo في 19 ديسمبر 2005 في 20:04

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#10

قلب لغة الواجهة بين العربي والانكليزي يتم فعليا قبل إظهار النموذج الرئيسي للبرنامج وذلك في الحدث startup لـ Application حيث أقوم بفتح الريجستري وقراءة القيم المتعلقة بلغة واجهة البرنامج والتي خزنتها سابقا ثم أقوم بضبط لغة الـ Thread الحالي للغة التي أريدها العربية مثلا كالسطر التالي

Thread.CurrentThread.CurrentUICulture = New CultureInfo("Ar")

الآن عند تحميل الفورم الخاصة بالبرنامج ستعرض الواجهة الموافقة للغة الـ thread الحالي التي ضبطناها

هذا كل شئ ببساطة حول كيفية عمل برنامج ثنائي الواجهة عربي/انكليزي مثلا

وفيما يلي كود إجرائية حدث startup الخاص بـ Application كاملا كما ورد في البرنامج المرفق

        Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) Handles Me.Startup
            My.Computer.Registry.CurrentUser.CreateSubKey(SettingsKey)
            Dim MyKey As Microsoft.Win32.RegistryKey = My.Computer.Registry.CurrentUser.OpenSubKey(SettingsKey, True)

            Dim Lng As String = MyKey.GetValue("Program Language", "En")
            If Lng.ToUpper = "Ar".ToUpper Then
                AppLang = AppLangEnm.Arabic
                Thread.CurrentThread.CurrentUICulture = New CultureInfo("Ar")
            Else
                AppLang = AppLangEnm.English
                Thread.CurrentThread.CurrentUICulture = New CultureInfo("En")
            End If
            MyKey.Close()
        End Sub

طبعا أنا اضطررت لوضع كود تغيير لغة الـ thread الحالي ضمن الحدث startup الخاص بـ application و القيام بإعادة تشغيل التطبيق كاملا بسبب أنني اطبق التغييرات على النافذة الرئيسية للبرنامج والبرنامج وحيد النافذة

أما إن كنت تظهر نافذة بضغط زر من نافذة أخرى يمكنك استخدام أمر تغيير لغة الـ thread قبل أمر إظهار النافذة مباشرة مثل الكود التالي على سبيل المثال

Thread.CurrentThread.CurrentUICulture = New CultureInfo("Ar")
form2.show()

تم تعديل هذه المشاركة بواسطة samerselo في 19 ديسمبر 2005 في 20:13

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#11

ياخوي والله انك ماشاء الله عندك امكانيات ،بس بغيت لو عندل طريقة لتغيير شكل (Button) ، حتى يتلاتم مع شكل ال(Background)

و بس بغيت اعرف انت من وبن؟

و تحياتي :)

goku.jpg
#12

ياريت لو وضعت سؤالك في موضوع مستقل حتى يستفيد الجميع

بالنسبة لموضوع تغيير شكل الـ Button عليك باستخدام أوامر GDI ولكن ليس لدي الوقت الآن لعمل مثال

اطرح سؤالك في موضوع مستقل والجميع سيساعدك

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#13

يعطيك 1000 عافية :) ..

جاري التحميل يا سيدنا ..

dr.cisco ..

#15

جزاك الله كل الخير :D

#16

يعطيك العافية أخ محمد وجزاك الله خير

عندي سؤال :rolleyes:

هل تنطبق هذة الأكواد مع visual studio.net 2003 ؟

اذا كان هناك اختلاف B) ارجوا ان تعرض الأكواد الخاصة ببرنامج visual studio.net 2003

تم تعديل هذه المشاركة بواسطة betterfly في 1 فبراير 2007 في 13:56

#17

هناك ما هو مطابق وما هو مختلف

بالنسبة لأكواد 2003 لايمكنني تلبية طلبك لأن الـ 2003 غير منصب على جهازي ولا أحب وضع كود بدون أن أجربه أولا

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#18
محمد سامر أبو سلو كتب:
هناك ما هو مطابق وما هو مختلف

-waf

لم افهم الجملة الأولى :huh:

الرجاء التوضيح :D

#19

لو قمت بالبحث في المنتدى جيدا قبل السؤال لوجدت أن الأكواد لاتختلف كثيرا بين الـ 2003 و الـ 2005 عدا الإضافات الجديدة في الـ 2005 والغير موجودة في الـ 2003 والاختلافات الكبيرة هي في برمجة قواعد البيانات وهذا مختص به قسم ADO .net

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

هذا الموضوع مغلق.

مواضيع مشابهة