0
저는 파이 게임으로 작업 중이며 그것을 배우려고합니다. 내가 어떻게하고 있는지 전화하고 싶다면 "버튼"을 만들 수있었습니다. 주 메뉴를 표시하는 main()이 있습니다. 그런 다음 재생하려는 수준을 선택할 수있는 pick_level()을 사용합니다. 내 문제는 일단 pick_level()이 실행되면 main() 텍스트를 화면에서 꺼내는 것입니다. 아래는 제 코드입니다. 어떤 이유로 든 올바르게 대응하지 못합니다.화면의 텍스트를 지우고 새 텍스트를 추가하십시오.
#import games
import pygame
from pygame.locals import *
import sys
pygame.init()
DISPLAYSURF = pygame.display.set_mode((1024, 720), 0, 32)
pygame.display.set_caption('The End')
#Set color of main menu
BLUE = (0, 0, 255)
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
DISPLAYSURF.fill(BLUE)
# Set up text to show.
myfont = pygame.font.SysFont("curier new", 45)
gameFont = pygame.font.SysFont("times new roman", 20)
def main():
""" Main Program """
# render text
lbltheEnd = myfont.render("The End", 1, WHITE)
lblchooseLevel = gameFont.render("Choose Level", 1, WHITE)
lblCredits = gameFont.render("Credits", 1, WHITE)
lblexit = gameFont.render("Exit", 1, WHITE)
DISPLAYSURF.blit(lbltheEnd, (100, 100))
#rectangle for button click
global btnChooseLevel
btnChooseLevel = pygame.draw.rect(DISPLAYSURF, BLACK, (98, 150, 111, 25))
DISPLAYSURF.blit(lblchooseLevel, (100, 150))
def pick_level():
""" Show pick Level """
lblLevel = myfont.render("Level 1", 1, WHITE)
DISPLAYSURF.blit(lblLevel, (100, 100))
# Run the program
main()
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
# Clicks for make shift buttons
if event.type == MOUSEBUTTONUP:
print(str(event.pos[0]) + " " + str(event.pos[1]))
if(btnChooseLevel.collidepoint(event.pos)):
print("Choose Level Clicked")
pick_level()
pygame.display.update()
매력처럼 작동합니다. 빠른 답변 주셔서 감사합니다. draw_background()에 추가하는 방법을 살펴 보겠습니다. – crzyone9584
문제 없습니다. 다행스럽게도 도움이 될 수 있습니다. – sshashank124