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

شرح برامج عملية في vb.net

بدأه nasser50001 في 26 مايو 2011 · 13 رد · 2,982 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

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

ولقد اشتقت كثيرا للمنتدى ولأفراد المنتدى القدامى منهم والجدد واسأل الله تعالى أن يجمعنا دائما على الخير

الحقيقة كنت في احد المقابلات وهناك كان يوجد مجموعة من الخريجين وذكر أحدهم وهو يتحدث عن مشروع تخرجة وقال انه استفاد كثيرا من كتاب " انشأ مشروعك بالفيجوال بيسك 6 من الألف الى الياء " فلما قلت له أنا مؤلف الكتاب احتفى بي كثيرا وشكرني على الإستفادة الكبيرة التي حصلها من الكتاب وهو سيسافر الى بلد خليجي مدرب كمبيوتر

فعلمت ان بذل العلم افضل القربات الى الله تعالى وافضل ما تنفع به الناس

المهم لا اطيل عليكم جائتني فكرة شرح بعض البرامج العملية وتنفيذها سويا وشرح اكوادها وهي الطريقة التي اظن ان تكون فعاله في تعلم البرمجة وسابدا قريبا في وضع بعض البرامج الصغيرة في اجزاء محددة من اللغة ( الأدوات - الرسوم - الصور - قواعد البيانات ... الخ ) وستكون البرامج من برامجي أو برامج غيري أو من برامج على النت ولكن سيتم شرحها وتنفيذها عمليا معا خلال هذه الدروس وشرح اكوادها بشيئ من التفصيل

وانتظرونا إن شاء الله وارجو ان تعطوني رايكم في هذه الفكرة

لكلم تحياتي الخالصة

2
#2

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

نورت المنتدى :)

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#3

اكرمك الله اخي GHOST2010

وشكرا جزيلا وحشتنا كثيرا والله

المنتدى منور بيك :)

#4

اهلا وسهلا بك من جديد وننتظر الدروس بفارغ الصبر :cool:

GoodBye

#5

اهلا بيك يا اخ محمد

إن شاء الله ابدأ قريبا بإذن الله

#6

البرنامج الأول

عمل آلة حاسبة ظريفة

أولا : تصميم الواجهة كما بالصورة التالية

post-39100-062996500 1307110517_thumb.jp

ملاحظات على التصميم

1 - يمكنك تصميم الواجهة بصورة افضل من ذلك حسب ما ترغب وبالشكل الذي تريد

2 - الأزرار تحتوي على خاصية " الضغط على مفتاح Alt مع المفتاح المطلوب وهذه يتم ضبطها من خلال الخاصية text

حيث يتم وضع العلامة & قبل الحرف المراد تسطيرة في عنوان زر الأمر مثلا زر أمر عنوانة " file" واريد تسطير حرف L تكتب كالتالي FI&LE

ثانيا : كود البرنامج

المتغيرات المستخدمة في البرنامج وهي

    Dim ms As String = ""

    Dim a As Double ' first value
    Dim b As Double ' second value 
    Dim c As Integer = 0 ' 1=add, 2=sub, 3=mul, 4=div
    Dim flag As Boolean = False
    Dim ina As Boolean = False
    Dim inb As Boolean = False

المتغيرات المستخدمة ووظيفة كل متغير

1 - المتغير MS ويعبر عن القيمة المخزنة فيذاكرة الحاسبة والقيمة الأبتدائية لها هي لاشيئ

2 - المتغير a ويعبر عن القيمة المدخلة الأولى

3 - المتغير b ويعبر عن القيمة المدخلة الثانية وهي من النوع double

4 - المتغير c وهو يعبر عن قيمة برقم العملية المطلوب تنفيذها وهي تأخذ القيم 1 للجمع و2 للطرح و3 للضرب و4 للقسمة

5 - المتغير flag وهو علم من النوع yes/no ويستخدم لأختبار وجود قيمة بمربع النص

6 - المتغير ina & المتغير inb وتحدد على وجود قيمة للرقم الأول ووجود قيمة للرقم الثاني

اجراءات العمليات الأربعة

اجراء يتم انشائه لتنفيذ عملية الجمع

Public Sub addition()
        TextBox1.Text = a + b ' add operation
        a = TextBox1.Text ' To continue operation
        Console.WriteLine("Value of a after in addition is " + a.ToString)
        b = 0
        c = 0
        flag = True
    End Sub

الإجراء السابق بقوم بجمع قيمة a&b ويضع النتيجة في مربع النص وكذلك يعتبر القيمة في مربع النص هي رقم أول لعملية تالية ولذلك يخزنها في المتغير a مرة ثانية

ثم يصفر قيمة المدخل الثاني وكذلك رقم العملية لإجراء عملية ثانية

ثم يجعل المتغير flag = true والذي يعني وجود قيمة بمربع النص

والكود الالي لبقية الإجراءات للعمليات التالية

    Public Sub subtraction()
        TextBox1.Text = Val(a) - Val(b) ' subtraction
        a = Val(TextBox1.Text) ' To continue operation
        Console.WriteLine("Value of a in Subtraction is " + a.ToString)
        b = 0
        c = 0
        flag = True
    End Sub
    Public Sub multi()
        TextBox1.Text = Val(a) * Val(b) ' multiplication
        a = Val(TextBox1.Text) ' To continue operation
        Console.WriteLine("Value of a in Multiplication is " + a.ToString)
        b = 0
        c = 0
        flag = True
    End Sub
    Public Sub divi()
        TextBox1.Text = Val(a) / Val(b) ' division
        a = Val(TextBox1.Text) ' To continue operation
        Console.WriteLine("Value of a in Division is " + a.ToString)
        b = 0
        c = 0
        flag = True
    End Sub

كود ادخال اقيم بالضغط على الأرقام من 0 الى 9

        If flag = False Then
            TextBox1.Text = TextBox1.Text + "1"
        Else
            flag = False
            TextBox1.Text = ""
            TextBox1.Text = TextBox1.Text + "1"
        End If
    End Sub

في هذا الكود لو لم يكن هناك قيمة في مربع النص فنجعل مربع النص يحتوي الرقم 1

وإن كان هناك قيمة مكتوبة بمربع النص فان مربع النص يحتوي على القيمتين لتصبح رقم مكون من رقمين وهكذا

ويمكنك كتابة اكواد الأرقام الباقية بنفس الطريقة

كود العمليات الأربعة

كود الجمع

        If TextBox1.Text = "" Then

        Else
            If ina = True And TextBox1.Text <> "" Then
                b = Val(TextBox1.Text)
                If c = 1 Then
                    addition()
                ElseIf c = 2 Then
                    subtraction()
                ElseIf c = 3 Then
                    multi()
                ElseIf c = 4 Then
                    divi()
                End If
                c = 1
            Else
                ina = True
                a = Val(TextBox1.Text)
                TextBox1.Text = ""
                c = 1
            End If
        End If

1 - وفي هذا الكود يتم التأكد أن مربع النص غير خالي ووجود قيمة اولية قد خزنت بالمتغير ina

2 - وفي هذه الحالة يضع القيمة الموجودة بمربع النص بالمتغير b كقيمة ثانية ويتاكد أن رقم العملية المستخدمة هو 1 لإستدعاء اجراء الجمع او 2 لإستدعاء اجراء الطرح أو 3 لإستدعاء اجراء الضرب او 4 لإستدعاء اجراء القسمة وفي النهاية يضع قيمة العملية 1 للمتغير c

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

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

المرفقات
face.jpg

تم تعديل هذه المشاركة بواسطة nasser50001 في 3 يونيو 2011 في 19:04

2
#7

جزاك الله خيرا على هذا المجهود الرائع وأتمنى أن تواصل في هذا العمل الذي نحن في حاجة له

يا أهل سوريا اعلنوها خلافة اسلامية لتكون الشام عقر دار المسلمين وخلاص ارض فلسطين

#8

السلام عليكم ورحمه الله وبركاته

اخي لاتنسى شرط ان المقام يساوي صفرا في المقام والا سوف يعيق عمل البرنامج!!

1

.:: Wish to become better and better ::.

#9

اخي ناصر ,, أهلا بك وكلامك بالفعل صحيح فالمثال + الشرح مفيد جدا للتعلم ,, نتظر منك المزيد والمزيد وجزاك الله خيرا .

#10

بارك الله فيك وجزاك الله خيرا , لك ولكل من هنا امثالك , فكثر من هو هنا اعطا الفائده ,

يعطيك العافية على الدرس.

#11

جميل جداً ، نستفيد من خبرتك اخي ...

نورت وشرفت المنتدى ...

MagicCreativity.png

 

♥♥♥

♥♥♥

♥♥♥

♥♥♥


Palestine.gif

#12

اعتذر عن التأخير كثيرا

وسوف اكمل قريبا إن شاء الله

اراكم قريبا مع تكملة المثال ومثال جديد إنش اء الله

#13

كود عملية الطرح

 If ina = True And TextBox1.Text <> "" Then
            b = Val(TextBox1.Text)
            If c = 1 Then
                addition()
            ElseIf c = 2 Then
                subtraction()
            ElseIf c = 3 Then
                multi()
            ElseIf c = 4 Then
                divi()
            End If
            c = 2
        ElseIf ina = False and c =0 And TextBox1.Text = "" Then
            c = 5
            TextBox1.Text = "-"
        ElseIf ina = True And TextBox1.Text = "" Then

        ElseIf ina = False And TextBox1.Text <> "" And TextBox1.Text <> "-" Then
            ina = True
            a = Val(TextBox1.Text)
            TextBox1.Text = ""
            c = 2
        ElseIf TextBox1.Text = "-" Then
            c = 0
            ina = False
            TextBox1.Text = ""
        End If

شرح الكود

1- يتم التأكد من أن مربع النص غير فارع وأن هناك قيمة اولى مخزنة بالمتغير inta وهذا يعني وجود قيميتن لإجراء عملية الطرح

2 - يتم تخزين القيمة الحالية بالمربع في المتغير b الذي يمثل الفيمة الثانية

3 - يتم التأكد من رقم العملية وتنفذ الإجراء الخاص بالعملية الذي تم شرحة في الدرس السابق

4 - هكذا يكون تم عملية الطرح

5 - بقية الكود يناقش حدوث خطأ معين مثل انه لا توجد قيمة أولى أو عدم وجود قيمة بمربع النص وهكذا فيتم انهاء العملية ووضع قيمة بالمتغير C

كود الضرب

  If TextBox1.Text = "" Then
            a = 0
            c = 3
            ina = True
        Else
            If ina = True And TextBox1.Text <> "" Then
                b = Val(TextBox1.Text)
                If c = 1 Then
                    addition()
                ElseIf c = 2 Then
                    subtraction()
                ElseIf c = 3 Then
                    multi()
                ElseIf c = 4 Then
                    divi()
                End If
                c = 3
            Else
                ina = True
                a = Val(TextBox1.Text)
                TextBox1.Text = ""
                c = 3
            End If
        End If

شرح الكود

الكودواضح جدا كما تم شرحة في الأزرار السابقة

كود القسمة

     If TextBox1.Text = "" Then
            a = 0
            c = 4
            ina = True
        Else
            If ina = True And TextBox1.Text <> "" Then
                b = Val(TextBox1.Text)
                If c = 1 Then
                    addition()
                ElseIf c = 2 Then
                    subtraction()
                ElseIf c = 3 Then
                    multi()
                ElseIf c = 4 Then
                    divi()
                End If
                c = 4
            Else
                ina = True
                a = Val(TextBox1.Text)
                TextBox1.Text = ""
                c = 4
            End If
        End If

نفس الشرح السابق

كود زر المساواه =

        b = Val(TextBox1.Text)
        If c = 1 Then
            addition()
        ElseIf c = 2 Then
            subtraction()
        ElseIf c = 3 Then
            multi()
        ElseIf c = 4 Then
            divi()
        End If

الكود واضح جدا وهو استدعاء اجراء العملية المطلوبة

كود زر المسح C

        TextBox1.Text = ""
        a = Nothing
        b = Nothing
        c = 0
        flag = False
        ina = False
        inb = False

الكود أيضا واضح جدا

كود تخزين قيمة بذاكرة الحاسبة ms

        If TextBox1.Text = "" Then
        Else
            ms = TextBox1.Text
        End If

حيث يتم تخزين قيمة مربع النص الى المتغير ms وإن كان مربع النص فارغ فلن يتم تخزين شيئ

كود قراءة القيمة المخزنة بذاكرة الحاسبة MR

        If ms = "" Then
        Else
            TextBox1.Text = ms
        End If

الكود واضح إن كان المتغير ms به قيمة يتم وضعها بمربع النص

كود أزالة المخزن بذاكرة الحاسبة MC

        If ms = "" Then
        Else
            ms = ""
        End If

الكود واضح جدا

اكواد الأزرار الباقية واضحة جدا وهضغها في مرة واحدة

كود زر 1/x

    Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click
        TextBox1.Text = 1 / Val(TextBox1.Text)
    End Sub

كود زر الجزر التربيعي 
    Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
        TextBox1.Text = Val(System.Math.Sqrt(TextBox1.Text))
    End Sub

كود زر مسح مربع النص 

  Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click
        TextBox1.Text = ""
    End Sub
كود حذف ارقام للخلف 
        z = TextBox1.Text.Length
        If TextBox1.Text = "" Then
        Else
            y = TextBox1.Text.Substring(0, z - 1)
            TextBox1.Text = y
        End If
كود زر الفاصلة العشرية .
   Private Sub ButtonDot_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonDot.Click
        ' Just little change here, when empty put "0."
        If InStr(TextBox1.Text, ".") Then

        Else
            If c <> 0 Then
                If TextBox1.Text = "" Then
                    TextBox1.Text = "0."
                ElseIf TextBox1.Text = "-" Then
                    TextBox1.Text = TextBox1.Text + "0."
                Else
                    TextBox1.Text = TextBox1.Text + "."
                End If
            Else
                If TextBox1.Text = "" Then
                    TextBox1.Text = "0."
                Else
                    TextBox1.Text = TextBox1.Text + "."
                End If
            End If
        End If
    End Sub
كود زر الخروج 
    Private Sub ButtonExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonExit.Click
        'Exiting
        MsgBox("Thanks for Using Calc v1.4", MsgBoxStyle.OkOnly, "Good Bye...")
        Me.Close()
    End Sub

مرفق المشروع كامل في المرفقات

اراكم في برنامج آخر إن شاء الله

Calc.rar

1
#14

اكرمك الله

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