الشبكة العربية لمطوري الألعاب

خبير  السيد فتحى السيد مشاركة 41

عندما تحرك الصوره الى اليمين تخرج من حدود النافذه 😒
 
المطلوب منكم (الواجب)  😲
 
ان تجعل الصوره لا تخرج من حدود النافذه اريد ان ارى الأفكار
 
اشوفكم غداً

خبير مشرف أسامة السلمان مشاركة 42

السلام عليكم

هناك مشكلتان عند أولا لم أفهم ماذا تقصد بهذه العبارة


أما في 20/جمادى الأولى/1432 12:18 ص، فقد تنهد السيد فتحى السيد بارتياح وهو يرد:

حدث الضغط على المفاتيح

ثانيا قمت بتطبيق ماقلته لكن ظهرت لي أخطات وهذه صورة توضحها





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

أسامة السلمان
مطور ألعاب ومهندس برمجيات.
للتواصل: https://twitter.com/TheDorgam
بما أن الله على كل شيء قدير ؛ إذا ، ليس هناك شيء يدعى "المستحيل".

خبير  السيد فتحى السيد مشاركة 43

السلام عليكم
حدث الضغط على المفاتيح (الكيورد) لوحة المفاتيح

بتاريخ 23 ابريل 2011 12:36 م، قطب أسامة السلمان حاجبيه بشدة وهو يقول:

قمت بتطبيق ماقلته

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

ضع مسافه بين select  و  caseوهذا الكود مره اخرى اكتبه كما هو


 Select Case e.KeyCode 
        Case Keys.Right  
              PictureBox1.Left += 10 
        Case Keys.Left  
              PictureBox1.Left -= 10  
        Case Keys.Up         
              PictureBox1.Top -= 10   
        Case Keys.Down
              PictureBox1.Top += 10
  End Select

خبير  مهند محمد علي مشاركة 44

تم التنفيذ...
بس هنال شي لم افهمه في الكود هو

e.KeyCode

بالنسبه للواجب😄

علي ما اعتقد انه يمكن تحديد مكان التحرك مثلا النافذه 600*800

تقوم بكتابه شرط if لكي يمنع الخروج خارج هذه الاحداثيات

خبير  السيد فتحى السيد مشاركة 45

وفي 23 ابريل 2011 05:09 م، قال المهند متحمساً:

بس هنال شي لم افهمه في الكود هو

e.KeyCode








وفي 23 ابريل 2011 05:09 م، ظهر شبح ابتسامة على وجه المهند وهو يقول:

علي ما اعتقد انه يمكن تحديد مكان التحرك مثلا النافذه 600*800

تقوم بكتابه شرط if لكي يمنع الخروج خارج هذه الاحداثيات
تمام بس المهم التنفيذ

خبير  السيد فتحى السيد مشاركة 46

هسهل الواجب شويه
بعد جملة

PictureBox1.Left += 10
 
اكتب


If PictureBox1.Left > 750 Then
   PictureBox1.Left = 750

EndIf


المطلوب فعل نفس الشئ شمال وفوق وتحت يعنى منع الصوره من الخروج خارج الإطار. 
واشوفكم بعد يومين

خبير  مهند محمد علي مشاركة 47

يعني الفكره تعني انه اذا وصل الدب الي الاحداثي المحدد فانه يرجه اله مره اخري فيظهر لنا انه لا يسنطيع المرور

وهذا هو الكود بعد التنفيذ


Class Form1



    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

        Select Case e.KeyCode

            Case Keys.Up
                PictureBox1.Top -= 10
                If PictureBox1.Top < 50 Then PictureBox1.Top = 50
            Case Keys.Down
                PictureBox1.Top += 10
                If PictureBox1.Top > 200 Then PictureBox1.Top = 200
            Case Keys.Left
                PictureBox1.Left -= 10
                If PictureBox1.Left < 50 Then PictureBox1.Left = 50
            Case Keys.Right
                PictureBox1.Left += 10
                If PictureBox1.Left > 200 Then PictureBox1.Left = 200
        End Select
    End Sub

خبير مشرف أسامة السلمان مشاركة 48

عفوا اخي الكريم

بالنسبة لكتابة الكود أنا لم أفهم شيء كل اللي فعلته نسخ ولصق

هل ستقوم بشرح الكود لنا؟ أم في مرحلة أخرى؟

أسامة السلمان
مطور ألعاب ومهندس برمجيات.
للتواصل: https://twitter.com/TheDorgam
بما أن الله على كل شيء قدير ؛ إذا ، ليس هناك شيء يدعى "المستحيل".

خبير  السيد فتحى السيد مشاركة 49

السلام عليكم


في 23 ابريل 2011 06:51 م، قال المهند بهدوء وتؤدة:

يعني الفكره تعني انه اذا وصل الدب الي الاحداثي المحدد فانه يرجه اله مره اخري فيظهر لنا انه لا يسنطيع المرور

تمام,
  استنتجت من الكود اللى انت كاتبه انك لم تعدل حجم النافذه الى 800*600 عدلها كى نوحد المشروع ثم عدل الكود ليناسب الأبعاد الجديده

خبير  السيد فتحى السيد مشاركة 50

في 23 ابريل 2011 08:35 م، عقد أسامة السلمان حاجبيه بتفكير وقال:

بالنسبة لكتابة الكود أنا لم أفهم شيء كل اللي فعلته نسخ ولصق
الفكره بسيطه ان الدب له موقع على النافذه وكل ما تحرك الدب يتغير الموقع فنحن هنا قلنا للبرنامج عندما يصل الموقع الى حدود النافذه (وهذا تعرفة من  الأبعاد التى حددتها للنافذه اى لو ان النافذه عرضها 800 كما فى مثالنا سيكون الموقع 800 - عرض صندوق الصور= 750)  فعندما يصل الدب الى النقطه 750 فتكون النقطه الجديده 750 فلا يتحرك وان اردت ان يبدأ من الجها الأخرى  تجعل النقطه الجديده = 0 اى اول النافذه