Мои друзья и я делаем викторину в PyGame и хотели бы знать, как, когда пользователь нажимает кнопку, он может перейти к следующему вопросу (не оставляя прежнего текста позади).Как очистить экран в pygame?
2
A
ответ
1
В вашем игровом цикле, прежде чем рисовать новый кадр, заполните рамку цветом фона.
Пример:
ball = pygame.Rect(0,0,10,10)
while True:
mainSurface.fill((0,0,0))
pygame.draw.circle(display,(255,255,255),ball.center,5)
ball.move_ip(1,1)
pygame.display.update()
Ключевым моментом является mainSurface.fill, который очистит предыдущий кадр.
4
Прежде всего, я предлагаю вам перейти к документации PyGame и немного почитать о PyGame. (Link)
Однако, чтобы сэкономить ваше время, прежде чем нарисовать новый набор фигур/записей на экране, вы должны использовать функцию screen.fill(#Your chosen colour)
. Это функция PyGame, которая избавляется от старого экрана и позволяет вам нарисовать новые элементы на ясном экране без пронумерованных рисунков.
Пример:
import pygame
import sys
from pygame.locals import *
white = (255,255,255)
black = (0,0,0)
red = (255, 0, 0)
class Pane(object):
def __init__(self):
pygame.init()
self.font = pygame.font.SysFont('Arial', 25)
pygame.display.set_caption('Box Test')
self.screen = pygame.display.set_mode((600,400), 0, 32)
self.screen.fill((white))
pygame.display.update()
def addRect(self):
self.rect = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
pygame.display.update()
def addText(self):
self.screen.blit(self.font.render('Hello!', True, black), (200, 100))
pygame.display.update()
def addText2(self):
self.screen.blit(self.font.render('Hello!', True, red), (200, 100))
pygame.display.update()
def functionApp(self):
if __name__ == '__main__':
self.addRect()
self.addText()
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit(); sys.exit();
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_ESCAPE:
self.screen.fill(white)
self.addRect()
self.addText2() #i made it so it only changes colour once.
display = Pane()
display.functionApp()
Смежные вопросы
- 1. Очистить предыдущий экран, чтобы показать следующий экран pygame
- 2. pygame-Как затемнить экран
- 3. LibGDX - Как очистить экран
- 4. Как очистить экран python?
- 5. как очистить экран в питона
- 6. Как очистить экран в MySQL?
- 7. Как очистить экран в TASM?
- 8. Как очистить экран в C?
- 9. Как очистить экран в iex?
- 10. Очистить экран в питона
- 11. Очистить экран в Xcode
- 12. Pygame экран не отображается
- 13. Очистить экран в C
- 14. Очистить экран в C
- 15. Мигающий конечный экран - pygame
- 16. Pygame создать свежий экран
- 17. pygame мерцающий экран исправление
- 18. Как увеличить экран дисплея в PyGame?
- 19. Как разместить экран pygame в середине?
- 20. Как очистить экран gdb полностью?
- 21. Как очистить экран в java в cmd
- 22. Как очистить экран в Erlang в Windows
- 23. Очистить экран команды в gnuplot
- 24. Очистить экран и буфер
- 25. Очистить экран в команде «watch»
- 26. Почему мой экран pygame статичен?
- 27. Pygame уходит на экран gameOver
- 28. Как очистить экран консоли в C?
- 29. Как очистить экран терминала в Swift?
- 30. Как очистить экран рамки в java?