Уведомления

Группа в Telegram: @pythonsu

#1 Июль 23, 2023 21:12:01

KasumiKudo
Зарегистрирован: 2023-07-23
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Не получается создать главное меню

Код запускается и сразу закрывается. Прошу, помогите

 import pygame
pygame.init()
screen = pygame.display.set_mode((800, 600))
x = 50
y = 50
width = 40
height = 60
speed = 5
ARIAL_50 = pygame.font.SysFont('arial', 50)
class Menu():
    def __init__(self):
        self._option_surfaces = []
        self._callbacks = []
        self.current_option_index = 0
    def append_option(self, option, callback):
        self._option_surfaces.append(ARIAL_50.render(option, True, (255, 255, 255)))
        self._callbacks.append(callback)
    def switch(self, direction):
        self._current_option_index = max(0, min(self.current_option_index + direction, len(self._option_surfaces) - 1 ))
    def select(self):
        self._callbacks[self._current_option_index]()
    def draw(self, surf, x, y, option_y_padding):
        for i, option in enumerate(self._option_surfaces):
            option_rect = option.get_rect()
            option_rect.topleft = (x, y + i * option_y_padding)
            if i == self._current_option_index:
                pygame.draw.rect(surf, (0, 100, 0), option_rect)
            surf.blit(option, option_rect)
menu = Menu()
menu.append_option('Play', lambda : print('pass'))
menu.append_option('Quit', quit())
run = True
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
    pygame.display.update()
pygame.quit()

Офлайн

#2 Июль 24, 2023 08:52:15

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Не получается создать главное меню

запусти в консоли и посмотри что пишет
  python script_name.py

https://www.youtube.com/watch?v=DudNvBklG6w&t=86s



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Отредактировано ZerG (Июль 24, 2023 19:51:29)

Офлайн

#3 Июль 24, 2023 12:15:24

KasumiKudo
Зарегистрирован: 2023-07-23
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Не получается создать главное меню

ZerG
python script_name.py
Traceback (most recent call last):
File “C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\code.py”, line 63, in runsource
code = self.compile(source, filename, symbol)
File “C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\codeop.py”, line 153, in __call__
return _maybe_compile(self.compiler, source, filename, symbol)
File “C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\codeop.py”, line 73, in _maybe_compile
return compiler(source, filename, symbol)
File “C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\codeop.py”, line 118, in __call__
codeob = compile(source, filename, symbol, self.flags, True)
File “<input>”, line 1
python script_name.py
^^^^^^^^^^^
SyntaxError: invalid syntax

Что это такое? Я плачу(

Офлайн

#4 Июль 24, 2023 19:50:17

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Не получается создать главное меню

открываешь термиал CMD
переходишь в папку где лежит твой файл с кодом
пишешь
python имя_твоего_файла.py

https://www.youtube.com/watch?v=DudNvBklG6w&t=86s



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Отредактировано ZerG (Июль 24, 2023 19:51:43)

Офлайн

#5 Июль 24, 2023 21:22:33

KasumiKudo
Зарегистрирован: 2023-07-23
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Не получается создать главное меню

ZerG
открываешь термиал CMD переходишь в папку где лежит твой файл с кодомпишешь python имя_твоего_файла.pyhttps://www.youtube.com/watch?v=DudNvBklG6w&t=86s

C:\Game> python main.py
pygame 2.5.0 (SDL 2.28.0, Python 3.11.4)
Hello from the pygame community. https://www.pygame.org/contribute.html
Программа открывается и сразу закрывается

Офлайн

#6 Июль 24, 2023 23:10:09

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1348
Репутация: +  118  -
Профиль   Отправить e-mail  

Не получается создать главное меню

KasumiKudo
Программа открывается и сразу закрывается
 menu.append_option('Play', lambda : print('pass'))
menu.append_option('Quit', quit())

в пункте quit сделай лямбду

Офлайн

#7 Июль 24, 2023 23:45:54

KasumiKudo
Зарегистрирован: 2023-07-23
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Не получается создать главное меню

xam1816
Теперь запускается, только черный экран

Офлайн

#8 Июль 24, 2023 23:50:57

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1348
Репутация: +  118  -
Профиль   Отправить e-mail  

Не получается создать главное меню

KasumiKudo
Теперь запускается, только черный экран
так программы писать, это не гадать. Т.е нужно понимать каждую строчку что она выполняет.

Офлайн

#9 Июль 25, 2023 08:55:45

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Не получается создать главное меню

У тебя проблем много! Но начни с этой строки

 menu.append_option('Quit', quit())
Ты пытаешься передать метод которого у тебя не существует Quit()
а дальше уже смотри что ты там еще накосячил



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version