خطوة 4: أضف طريقة لإعادة اللعبة.

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

ملاحظة

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

على سبيل المثال، في إنشاء برنامج المتاهة, عندما يبدأ تشغيل البرنامج, أردته أنت أن يغيير موضعه تلقائيا, ضع مؤشر الماوس في الجزء العلوي-يسار الزاوية للوحة. عندما يقوم المستخدم بتحريك المؤشر إلى الجدار, سوف ترغب انت بالتغير فقط ضع المؤشر على إبدأ. عند تحريك المستخدم للمؤشر حقل اللعب و الخلفية في مرة أخرى، الذي تريد تغيير موضع المؤشر في إبدأ مرة أخرى.

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

لإضافة طريقة لإعادة اللعبة.

  1. إذهب إلى محرر الرموز "بواسطة النقر بزر الماوس الأيمن فوق Form1.cs في مستكشف الحلولثم انقر فوق عرض تعليمات برمجية من القائمة.

  2. يجب أن تشاهد **finishLabel_MouseEnter()**الأسلوب الذي أضفته. أسفل هذه الطريقة إضافة جديد **MoveToStart()**الأسلوب.

    Private Sub MoveToStart()
        Dim startingPoint = Panel1.Location
        startingPoint.Offset(10, 10)
        Cursor.Position = PointToScreen(startingPoint)
    End Sub
    
    private void MoveToStart()
    {
        Point startingPoint = panel1.Location;
        startingPoint.Offset(10, 10);
        Cursor.Position = PointToScreen(startingPoint);
    }
    
  3. هناك نوع خاص من التعليق الذي يمكنك إضافة أي أسلوب أعلاه ثم IDE يمكن أن تساعدك إضافته. ضع المؤشر تشغيل الخط أعلاه أسلوب جديد. في Visual Basic C#, إضافة ثلاثة علامات الخط المائل (/ / /). في Visual Basic، إضافة ثلاثة واحد بين علامات اقتباس ('' '). يقوم الIDE بالتعبئة تلقائياً على النص التالي.

    ''' <summary>
    ''' 
    ''' </summary>
    ''' <remarks></remarks>
    Private Sub MoveToStart()
        Dim startingPoint = Panel1.Location
        startingPoint.Offset(10, 10)
        Cursor.Position = PointToScreen(startingPoint)
    End Sub
    
    /// <summary>
    /// 
    /// </summary>
    private void MoveToStart()
    {
        Point startingPoint = panel1.Location;
        startingPoint.Offset(10, 10);
        Cursor.Position = PointToScreen(startingPoint);
    }
    
  4. على الخط الفاصل بين التلخصين الميزين ، املئ في التعليق التالي. (بعد ضغط Enter الزر IDE تلقائياً بإضافة سطر جديد مع ثلاثة علامات الخط المائل (/ / /) أو ثلاثة علامات الاقتباس المفردة ('' ') ، بالإعتماد على لغتك الخاصة بالبرمجة بحيث يمكنك متابعة التعليق الخاص بك.)

    ''' <summary>
    ''' Move the pointer to a point 10 pixels down and to the right
    ''' of the starting point in the upper-left corner of the maze.
    ''' </summary>
    
    /// <summary>
    /// Move the pointer to a point 10 pixels down and to the right
    /// of the starting point in the upper-left corner of the maze.
    /// </summary> 
    

    ملاحظة

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

  5. بعد إضافة الأسلوب الخاص بك تحتاج إلى تتصل به. لأنك تريد بالبرنامج الخاص بك لتحريك المؤشر فوق نقطة البداية في أقرب وقت سوف يبدء تشغيل البرنامج ، يجب ان تستدعي الأسلوب في أقرب وقت على شكل إبدأ. لل ‏‫#Visual C ، ابحث عن الأسلوب التالي في نموذج الرموز الخاصة بك.

    public Form1()
    {
        InitializeComponent();
    }
    

    لل Visual Basic, أضف هذه الطريقة لنموذج الرموز الخاص بك. قبل finishLabel_MouseEnterالأسلوب، يبدأ كتابة تعليمات برمجية التالية.

    Public Sub New()
    

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

    Public Sub New()
        ' This call is required by Windows Forms Designer.
        InitializeComponent()
        ' Add any initialization after the InitializeComponent() call.
    End Sub
    

    هذا أسلوب خاص يستدعي المُنشئ. هي تعدم لمرة واحدة ،عندما يتم إنشاء النموذج الخاص بك. الآن إلى اليمين, كافة ولا يتم استدعاء أسلوب يدعى InitializeComponent(). سوف تضيف خط للإتصال بجديد **MoveToStart()**الأسلوب الذي قمت بكتابته. قبل أن تتابع، يجب مراعاة ما الذي تريد ان تضيفه إلى البرنامج للحصول عليه لإستدعاء **MoveToStart()**الأسلوب فورا بعد أن تستدعي **InitializeComponent()**الأسلوب.

    ملاحظة

    ال    InitializeComponent() الأسلوب في مُنشئ النموذج الخاص هو طريقة للIDE للكتابة. التي تضيف كل من عناصر التحكم والمكونات إلى النموذج ، وتعد خصائصهم. أي وقت تقوم فيه بتغيير أي من خصائص النموذج أو عناصر التحكم الخاصة به IDE تبديل هذه الطريقة. يمكنك البحث إليه عن طريق فتح الملف Form1.مصمم.cs من مستكشف الحلول. لا تحتاج إلى تحرير محتويات InitializeComponent()الأسلوب. تتولى IDE عملية هذا استناداً إلى النموذج الذي قمت بإنشائه في طريقة العرض "تصميم".

  6. إضافة مكالمة إلى **MoveToStart()**أسلوب فور تستدعي **InitializeComponent()**الأسلوب. نمزذج الرموز الخاصة بك يجب أن تشبه التالي.

    Public Class Form1
    
        Public Sub New()
            ' This call is required by Windows Forms Designer.
            InitializeComponent()
            ' Add any initialization after the InitializeComponent() call.
            MoveToStart()
        End Sub
    
        Private Sub finishLabel_MouseEnter() Handles finishLabel.MouseEnter
            ' Show a congratulatory MessageBox, then close the form.
            MessageBox.Show("Congratulations!")
            Close()
        End Sub
    
        ''' <summary>
        ''' Move the mouse pointer to a point 10 pixels down and to the right
        ''' of the starting point in the upper-left corner of the maze.
        ''' </summary>
        ''' <remarks></remarks>
        Private Sub MoveToStart()
            Dim startingPoint = Panel1.Location
            startingPoint.Offset(10, 10)
            Cursor.Position = PointToScreen(startingPoint)
        End Sub
    
    End Class
    
    namespace Maze
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                MoveToStart();
            }
    
            private void finishLabel_MouseEnter(object sender, EventArgs e)
            {
                // Show a congratulatory MessageBox, then close the form.
                MessageBox.Show("Congratulations!");
                Close();
            }
    
            /// <summary>
            /// Move the pointer to a point 10 pixels down and to the right
            /// of the starting point in the upper-left corner of the maze.
            /// </summary>
            private void MoveToStart()
            {
                Point startingPoint = panel1.Location;
                startingPoint.Offset(10, 10);
                Cursor.Position = PointToScreen(startingPoint);
            }
        }
    }
    

    لاحظ المكالمة إلى **MoveToStart()**أسلوب أسفل InitializeComponent(). إذا كنت تقوم البرمجة في ‏‫#Visual C ، تذكر إلى إنهاء الخط مع الفاصلة منقوطة (;) أو برنامجك الذي لم يبنى بعد.

  7. احفظ برنامجك وشغله. بمجرد أن يبدأ البرنامج ، وينبغي أن يكون المؤشر الخاص بك تلقائيا يتحرك قليلا إلى أسفل وإلى يمين الزاوية العليا -اليسرى من اللوحة.

للمتابعة أو للمراجعة