在pygame中移动图像并不起作用

时间:2018-05-19 15:01:10

标签: python pygame

我试图在MacOSX中使用pygame使用键盘箭头移动图像,但它根本不起作用。我在网上找到的所有代码都说我的代码是正确的,但它没有做任何事情。

import pygame, sys
from pygame.locals import *

pygame.init()

display_width = 800
display_height = 600

gameDisplay = pygame.display.set_mode((display_width,display_height))
pygame.display.set_caption('Game')

black = (0,0,0)
white = (255,255,255)
red = (255,0,0)
green = (0,255,0)
blue = (0,0,255)

FPS = 60
fpsClock = pygame.time.Clock()

dead= False

player_img = pygame.image.load('images/player.png')

def player(x,y):
    gameDisplay.blit(player_img, (x,y))

squirtx =  (display_width * 0.45)
squirty = (display_height * 0.8)
pygame.key.set_repeat(10, 10)


while not dead:

    for event in pygame.event.get():
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_UP:
                squirty -= 10
            if event.key == pygame.K_DOWN:
                squirty += 10
            if event.key == pygame.K_RIGHT:
                squirtx += 10
            if event.key == pygame.K_LEFT:
                squirtx -= 10
        if event.type == QUIT:
            pygame.quit()
            sys.exit()

    gameDisplay.fill(white)
    pygame.display.update()
    player(squirtx,squirty)


    pygame.display.update()
    fpsClock.tick(FPS)

pygame.quit()
quit()

我能得到的任何帮助都将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

所以,在尝试了一堆东西之后,我发现问题是我在MacOS终端上运行python main.py的代码。

问题是,当我以这种方式运行时,窗口似乎没有正确聚焦。

要解决这个问题,我只是使用pythonw main.py

运行它

感谢您的帮助。