【问题标题】:Why does screen = pygame.display.set_mode() can do screen.blit()?为什么screen = pygame.display.set_mode() 可以做screen.blit()?
【发布时间】:2020-06-09 12:05:36
【问题描述】:
我看到了这样一段代码:
Screen = pygame.display.set_mode(...)`
Screen.blits(...)
我的问题是,我们应该如何从变量 screen 调用 blits 方法。是不是因为display 是一个类而屏幕变成了一个对象?但是,如果这是真的,那么我们不应该改为screen = pygame.display()吗?
【问题讨论】:
标签:
python
class
module
pygame
game-development
【解决方案1】:
查看pygame.display.set_mode() 的manual,您可以看到它返回一个Surface 类型的对象,因此实际上它“构造”了一个新对象。
PyGame Surface 对象的 manual 列出了 blit() 和 blits() 成员函数。这就是为什么在你的问题代码中说Screen.blit(...) 是正确的。
代码pygame.Display代表一个类的名字,但不是这样直接使用的。