Атрибут класса Python со значением класса, унаследованного от типаPython

Программы на Python
Anonymous
Атрибут класса Python со значением класса, унаследованного от типа

Сообщение Anonymous »

Я делаю игру на Python с помощью Pyglet и в настоящее время пытаюсь использовать некоторые экраны меню или конечные экраны. Я создал класс Screen, и экраны (например, GameScreen) наследуются от него. Класс Screen имеет атрибут класса s, который определяет текущий отображаемый экран. Как мне назначить ему какой-нибудь объект Screen?
Это мой код:
# main.py

import pyglet
from screen import *

w = pyglet.window.Window()

@w.event
def on_draw():
w.clear()
Screen.s.on_draw()

pyglet.app.run()

# screen.py

class Screen:
s = MainMenuScreen() # of course doesn't work

def __init__(self): pass
def on_draw(self): pass

class MainMenuScreen(Screen):
def __init__(self):
self.buttons = [...]
...

def on_draw(self):
for button in self.buttons: button.draw()

class GameScreen(Screen):
def __init__(self):
self.player = Player(0, 0)
...

def on_draw(self):
self.player.draw()


Подробнее здесь: https://stackoverflow.com/questions/786 ... ited-class

Вернуться в «Python»