Вы унаследовали pg.rect и инициализировали свой объект как объект pg.rect. Таким образом, ваш объект Button имеет все атрибуты, которые находятся в объектах pg.rect. Вы можете использовать объект Button в случае, если вы можете использовать объект pg.rect. (Также необходимо добавить аргумент self в метод draw_rect
)
import pygame as pg
display = pg.display.set_mode((100,100))
class Button(pg.Rect):
def __init__(self, left, top, width, height, char):
super().__init__(left, top, width, height)
self.char = char
def draw_rect(self, window):
pg.draw.rect(window, pg.Color("red"), self)
b = Button(10,10,10,10,"a")
b.draw_rect(display)
pg.display.update()
И вызов super().__init__
ничего не создает, он инициализирует ваш параметр self
. Таким образом, ваш self
объект будет иметь такие атрибуты, как bottomleft
, которые приходят от super().__init__
.