Урок 2. Усовершенствуем вид экрана

Созданный нами экран выглядит довольно примитивно, надо его усовершенствать

Замените содержимое окна в файле Экран.py на следующий код, но пока что не запускайте его на исполнение, иначе получите сообщение об ошибке!  

# импортируем в среду программирования библиотеку (модуль) pygame
import pygame

# используем метод pygame.display.set_mode()для ввода ширины и высоты окна
pygame.display.set_mode((640,480))

# используем метод pygame.display.set_caption()для вывода названия игры в шапке окна
pygame.display.set_caption("Мой первый проект")

# используем метод pygame.image.load("")для загрузки изображение в переменную  
my_icon = pygame.image.load("img/mouse.png")

# используем метод pygame.display.icon()для вывода названия игры в шапке окна
pygame.display.set_icon(my_icon)

# создаем переменную и присваиваем ей значение True
run = True

# запускаем бесконечный цикл
while run:

    # с помощью цикла for находим нужный нам тип события - event.type, 
      которое содержится в методе pygame.event.get()
  for event in pygame.event.get():

        # если произошло событие, которое называется pygame.QUIT, 
          и которое выполняется при нажатии на кнопку-крестик на шапке экрана, то:
      if event.type == pygame.QUIT:

            # переменная run получит значение False и цикл while перестанет работать
             run = False

# как обычно, перерисовываем экран
pygame.display.update()

 

После того, как вы ввели или скопировали этот код, вам нужно создать в верхнем (корневом) каталоге новую папку, в которой будут храниться файлы изображений.

создаем экран pygame

 Выберите любую картинку у себя на компьютере, которая будет изображение иконки в окне игры, скопируете файл этой картинки командой Copy, затем активируйте мышкой созданную папку и вставьте (Paste) в нее скопированный файл картинки.

2. Размер изображения не имеет значения, поскольку Pygame сам уменьшит ее до необходимых величин.

3. Теперь вам нужно изменить строку кода, куда вместо того файла, который я привел в качестве примера, вы введете имя файла вашего изображения иконки и можете запустить выполнение программы:

icon = pygame.image.load("img/имя вашего файла")

 

усовершенствованное окно игры

Так выглядит окно программы после внесенных изменений в код.

В итоге этого урока …

 

1. Вы продолжили знакомство с методом pygame.display, который используется как для задания размеров окна, так и для вывода заголовка и иконки в шапке этого окна: pygame.display.set_caption (“заголовок проекта”) и pygame.display.set_icon (файл изображения иконки).

2. Кроме того, вы создали отдельную папку для изображений с именем img, вставили в нее файл иконки и использовали метод  pygame.image.load (“img/имя файла”), который передает созданной вами переменной my_icon это изображение.

3. Цикл while, который раньше работал “по правде”, вне зависимости от чего-либо, теперь подчиняется значению созданной вами переменной run. Пока она равна True – цикл работает и экран обновляется. Как только вы нажмете на крестик на шапке экрана, эта переменная получит значение False и цикл прекратит свою работу.

Обратите внимание, что логические значения True и False в языке Python принято писать с заглавной буквы!

4. Некоторые затруднения могут возникнуть с пониманием того, как работает цикл for event in pygame.event.get ( ). Давайте заменим его на более понятное выражение на русском языке.

Звучит оно примерно так: для каждого события в списке событий pygame получи ( ):

То, что мы должны получить – это некий тип события, которые называется event.type и если if  таким типом события является нажатие на кнопку выхода, то есть event.type == pygame.QUIT, то переменная run получит значение False.

Здесь очень важно отметить следующее: если вы не писали программ на каких-либо других языках программирования, кроме Scratch, то обратите внимание на написание знаков равенства в вашем коде. Обычный знак равенства =  используется для присвоения переменной или объекту какого-либо значения, а вот двойной знак == служит для проверки условия, имеет ли некий объект или переменная то или иное значение. Обычно двойной знак равенства используется совместно с конструкцией if

5. Кроме того, очень важно обращать внимание на заглавные или строчные буквы, которые используются в кодах Python и Pygame. Невнимание к этой “мелочи” может привести в ошибкам в исполнении кода ваших программ.