按钮按下时显示文本的循环?PyGame

0 投票
1 回答
552 浏览
提问于 2025-04-18 03:48

在PyGame中,我只想在按下按钮时显示文本,想要实现一种切换的效果,也就是说,按一次E键就显示文本,再按一次就隐藏文本。目前我有以下代码,但它并没有实现这个功能?希望能得到一些帮助!

  for event in pygame.event.get():  
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_e:

                    if tile.G != 0:
                        Funk.text_to_screen(screen, tile.G, tile.x, tile.y + half, color = [120, 157, 40])

1 个回答

0

我在这个代码片段里找不到类似的东西,所以我想建议以下几点:

创建一个变量,可能像这样:

show_text = False

#more code
#while loop
    if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_e:
            if show_text == True:
                show_text = False
                #code to disable the text display
            else:
                show_text = True
                #code to enable text display

Funk.text_to_screen()

是从哪里来的?我从来没见过这个。我会使用字体或freetype模块来创建文本表面,然后根据这个变量是否被切换来决定是否显示它。

撰写回答