حتى الان وفي جميع مواضيع المدونة لم نتطرق بعد الى كيفية فتح النوافذ في برامجنا كما تفعل معظم البرامج الحديثة، والكود الذي سنستعمله في فتح النوافذ ليس معقد أو صعب وهو من أساسيات pygame ويستعمل دائما عند إنشاء الألعاب، وفيما يلي الكود سيقوم باستدعاء مكتبة pygame و فتح نافذة بعرض 700 وطول 500 بكسل.
لماذا قمنا باستعمال set.mode وليس open_window ؟ السبب أن هذا الأمر يستطيع القيام بالكثير من الأمور عكس الأمر open_window، حيث نستطيع أن ننشئ ألعاب التي تعمل في وضع ملء الشاشة وهذا يحذف قائمة ابدأ وشريط العنوان ويعطي اللعبة إمكانية السيطرة على كل شيء على الشاشة لان هذا الوضع معقد قليلا للاستخدام ومعظم الناس يفضلون الألعاب الموجودة داخل الإطارات، لن نتعمق أكثر في موضوع الشاشة ولكن إذا كنت تريد أن تكتشف الكثير عن هذا الموضوع ارجوا زيارة الرابط التالي .
الآن سنتكلم عن المتغير size ولماذا قمنا بإنشاء قيمه بين قوسين وليس كما هو معلوم عند إنشاء المتغيرات size=700,500 ؟ بكل بساطة لان بايثون لا يستطيع تعيين قيمتين لنفس المتغير والطريقة الوحيدة لفعل ذلك هو عبر القوائم أو الصفوف .
سنقوم بإضافة صغيرة للكود السابق وهي اضافة عنوان للنافذة يظهر في شريط العنوان
كما نستطيع تغيير لون خلفية الشاشة ويتم تحديد الألوان باستعمال مصفوفة بثلاثة قيم من 0 إلى 255 أو بما تسمى RGB وعلى سبيل المثال ولتحديد اللون الأبيض للخلفية نقوم ب التالي :
بقيت لنا مشكلة وحيدة وربما تساءلت لماذا عندما أقوم بإغلاق النافذة لا تستجيب وتبقى تعمل؟
لحل هذه المشكلة علينا اضافة كود أخر لبرنامجنا حتى نجبر النافذة على الغلق عندما يريد المستخدم ذلك .
الان عندما تنقر على العلامة X لغلق النافذة ستعمل بشكل عادي وبدون أي مشكلة .
وفي نهاية هذا الدرس سنقوم بجمع الكود كاملا
في الوقت الراهن قد يبدو البرنامج غير مثير ، ولكن اعلم يا صديقي أنك قد حققت خطوة جيدة في برمجة الألعاب حيث قمنا بإنشاء نافذة والتي ستحتوي على لعبتنا في المستقبل ويمكنك أيضا اغلاق تلك النافذة عندما تريد ذلك وجيد لحد هذه الساعة وهذه الخطوات نحتاجها دائما عندما نريد إنشاء ألعاب و لا غنى عن هذه الخطوات.
import pygame
size = (700, 500) screen = pygame.display.set_mode(size)
لماذا قمنا باستعمال set.mode وليس open_window ؟ السبب أن هذا الأمر يستطيع القيام بالكثير من الأمور عكس الأمر open_window، حيث نستطيع أن ننشئ ألعاب التي تعمل في وضع ملء الشاشة وهذا يحذف قائمة ابدأ وشريط العنوان ويعطي اللعبة إمكانية السيطرة على كل شيء على الشاشة لان هذا الوضع معقد قليلا للاستخدام ومعظم الناس يفضلون الألعاب الموجودة داخل الإطارات، لن نتعمق أكثر في موضوع الشاشة ولكن إذا كنت تريد أن تكتشف الكثير عن هذا الموضوع ارجوا زيارة الرابط التالي .
الآن سنتكلم عن المتغير size ولماذا قمنا بإنشاء قيمه بين قوسين وليس كما هو معلوم عند إنشاء المتغيرات size=700,500 ؟ بكل بساطة لان بايثون لا يستطيع تعيين قيمتين لنفس المتغير والطريقة الوحيدة لفعل ذلك هو عبر القوائم أو الصفوف .
سنقوم بإضافة صغيرة للكود السابق وهي اضافة عنوان للنافذة يظهر في شريط العنوان
pygame.display.set_caption("مدونة بايثون العربي ")
background_colour = (255,255,255) screen.fill(background_colour)
pygame.display.flip()
لحل هذه المشكلة علينا اضافة كود أخر لبرنامجنا حتى نجبر النافذة على الغلق عندما يريد المستخدم ذلك .
running=True while running: for event in pygame.event.get(): if event.type==pygame.QUIT: running=False pygame.quit()
الان عندما تنقر على العلامة X لغلق النافذة ستعمل بشكل عادي وبدون أي مشكلة .
وفي نهاية هذا الدرس سنقوم بجمع الكود كاملا
import pygame #استدعاء مكتبة الألعاب background_colour = (255,255,255)#تحديد لون الخلفية size=(700,500)#تحديد حجم النافذة screen=pygame.display.set_mode(size)#انشاء النافذة screen.fill(background_colour)#تطبيق لون الخلفية pygame.display.flip()#عرض الرسومات على الشاشة pygame.display.set_caption("على بركة الله نبدأ") running=True while running: for event in pygame.event.get(): if event.type==pygame.QUIT: running=False pygame.quit()
ليست هناك تعليقات:
إرسال تعليق