pygame:调整子类所基于的表面的大小

问题描述 投票:0回答:1

我有一个基于pygame表面的游戏类,我将它初始化为:

game_obj(pygame.Surface)
    def __init__(self, x, y, width, height):
      super(game_obj, self).__init__((width, height)

在游戏的后期我希望对象改变大小,所以我再次调用super(),但它看起来不是正确的大小,或者当我填充它时没有正确填充。我还需要做些什么吗?

python pygame surface
1个回答
1
投票

仅使用super()不会改变它。使用super().__init__()可以改变它,但我宁愿用新的大小创建新的game_obj实例,并将旧实例中的元素复制到新实例,并删除旧实例。

或者我会创建具有两个表面的对象 - 更小和更大 - 并保持两者。

© www.soinside.com 2019 - 2024. All rights reserved.