Heim >Backend-Entwicklung >Python-Tutorial >Warum ist mein PyGame-Display leer?
Beim Erstellen einer visuellen Anwendung mit PyGame kann es vorkommen, dass trotz Zeichenbefehlen nichts auf dem Bildschirm gerendert wird. Um dieses Problem zu lösen, ist es wichtig, das Konzept der Anzeigeaktualisierungen zu verstehen.
In PyGame zeichnen Sie auf einem Oberflächenobjekt, das mit der Anzeige verknüpft ist. Diese Änderungen werden jedoch erst sichtbar, nachdem die Anzeige mit Funktionen wie pygame.display.update() oder pygame.display.flip() aktualisiert wurde.
Während pygame.display.flip() die gesamte Anzeige aktualisiert, pygame .display.update() kann auf bestimmte Bereiche abzielen.
Um den reibungslosen Betrieb einer PyGame-Anwendung sicherzustellen, ist eine typische Schleife erforderlich beinhaltet:
Ein Beispiel für eine korrigierte PyGame-Schleife:
import pygame from pygame.locals import * pygame.init() DISPLAY = pygame.display.set_mode((800,800)) pygame.display.set_caption("thing") clock = pygame.time.Clock() run = True while run: # Handle events for event in pygame.event.get(): if event.type == QUIT: run = False # Clear display DISPLAY.fill(0) # Draw scene pygame.draw.rect(DISPLAY, (200, 200, 200), pygame.Rect(0, 400, 800, 400)) # Update display pygame.display.flip() # Limit frames per second clock.tick(60) pygame.quit() exit()
Dies sollte das Problem eines leeren Bildschirms beheben und eine ordnungsgemäße Darstellung in PyGame gewährleisten.
Das obige ist der detaillierte Inhalt vonWarum ist mein PyGame-Display leer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!