无法使用 pgzero 在 python 中显示文本

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

我正在 pgzero 中制作一个简单的游戏,但是屏幕。功能似乎永远无法正常工作。

当我尝试像这样在开头显示文本时:

screen.draw.text("Hello", (50, 30), color="orange")

它出来说

screen is not defined

但是当我在这里使用它时:

def draw():
    screen.clear()
    bg.draw() 
    bread.draw()

它工作得很好

我该如何解决这个问题?

python pygame pgzero
2个回答
1
投票

我对 pgzero 不熟悉,但我安装了它并玩了一下,当我将 line 放入 draw() 函数中时,它运行良好:

def draw():
    screen.draw.text("Hello", (50, 30), color="orange")

所以看起来

draw()
需要在屏幕上显示内容(并且
screen
对象已经是
draw()
的一部分。如果您想解释这是如何发生的,请告诉我(简短的回答:对象继承)。

请告诉我这是否可以解决您的问题。

查看文档,有一些像这样的内置函数(事件挂钩)有特殊用途。我认为这是为了让不熟悉编程的用户快速启动和运行,但令人烦恼的是文档中似乎没有关于此的基本解释。当学习者转向学习不同的语言时,这可能会让他们感到困惑。然而,这些事情始终是一项正在进行的工作,因此希望它能有所改善。

更多信息:https://pygame-zero.readthedocs.io/en/stable/hooks.html


0
投票

根据我的尝试,除非你把它放在绘图函数中,否则它不会工作,除非你使用 pygame

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