Pygame window not showing up

Question:

I recently downloaded pygame on my Mac, but for some reason, the window does not pop up with the screen or anything. I don’t get an error message, it just runs but doesn’t actually pop up a display.

import pygame, sys
from pygame.locals import*

pygame.init()
SCREENWIDTH = 800
SCREENHEIGHT = 800
RED = (255,0,0)
screen = pygame.display.set_mode((SCREENWIDTH, SCREENHEIGHT))

pygame.draw.rect(screen, RED, (400, 400, 20, 20),0)
screen.fill(RED)




pygame.display.update()
Asked By: b0b75

||

Answers:

Your code is currently starting, drawing a red rectangle in a window, and then ending immediatly. You should probably wait for the user to quit before closing the window. Try the following:

import pygame, sys
from pygame.locals import*

pygame.init()
SCREENWIDTH = 800
SCREENHEIGHT = 800
RED = (255,0,0)
screen = pygame.display.set_mode((SCREENWIDTH, SCREENHEIGHT))

pygame.draw.rect(screen, RED, (400, 400, 20, 20),0)
screen.fill(RED)

pygame.display.update()

# waint until user quits
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

pygame.quit()

The loop in the end will ensure that the window remains open until the user closes it.

Answered By: Ismael Padilla

Please check this solution.

import pygame, sys
from pygame.locals import *

pygame.init()
SCREENWIDTH = 800
SCREENHEIGHT = 800
RED = (255, 0, 0)
screen = pygame.display.set_mode((SCREENWIDTH, SCREENHEIGHT))

while True:
    pygame.draw.rect(screen, RED, (400, 400, 20, 20), 0)
    screen.fill(RED)
    pygame.display.update()
Answered By: Anuradha

use fill before using draw.rect or bilt

screen.fill(RED)
pygame.draw.rect(screen, RED, (400, 400, 20, 20),0)
Answered By: kavin raja

Ok, to fix this problem go into any text editor (IDLE will do fine, so will notepad)
Type the following code:

YourFileName.py

pause

Then, click on ‘file’ then click on ‘save as’ and a screen should pop up asking you to name it. Name it:
YourFileName.bat
Save it in a folder that you can easily open

the way that you open the screen with PyGame is simply by double clicking the file I just showed you how to create. Then it will immediately run your code in PyGame.

Answered By: Daniel

If you’re working on pycharm, just make sure you’re running ‘current file’ instead of main or configurations. Rookie mistake, but most common.

Answered By: coffay
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.