pygame我的照片不会出现在我的窗口上

时间:2014-07-10 23:19:29

标签: python-2.7 pygame

import pygame 
import sys
import os
from pygame.locals import *

#Allows for the editing of a window
pygame.init() 
#Sets screen size
window = pygame.display.set_mode((800,600),0,32) 
#Names the window
pygame.display.set_caption("TEST") 
#Types of colors (red,green,blue)
black = (0,0,0) 
blue = (0,0,255)
green = (0,255,0)
yellow = (255,255,0)
red = (255,0,0)
purple = (255,0,255)
lightblue = (0,255,255)
white = (255,255,255)
pink = (255,125,125)

mif="climb.PNG"
mif=pygame.image.load(mif).convert()

#Loop
gameLoop = True 
while gameLoop:
    pygame.display.flip() #must flip the image o the color is visable
    window.blit(mif, (0,0))
    window.fill(black) #used to fill the creen with the certian color variables
    for event in pygame.event.get():
            if event.type == pygame.QUIT:
                gameLoop=False #Allows the user to exit the loop/game

pygame.quit() #quit the pygame interface
exit(0)

当我选择运行时,我的黄色窗口弹出但没有图像...
我是pygame和python的新手所以也许我只是做错了什么?

是否有特定的地方我应该保存我的图像?

我在Windows 8 hp上运行ENVY ......

我只是想知道我做错了什么,所以我不再犯错误了。 (我还应该补充一点,我尝试了许多不同的图片,有些图片无法找到。)

1 个答案:

答案 0 :(得分:1)

首先用黑色window.fill(black)填充窗口,
然后将图像放在window.blit(mif, (0,0))上,
并最后将其发送到您的图形卡(以及您的显示器上)pygame.display.flip()

window.fill(black)
window.blit(mif, (0,0))
pygame.display.flip()

如果您的图片与window一样大,那么您无需使用fill(black)

您可以使用脚本将图像保存在同一文件夹中。或者,您只能为图像创建子文件夹,以便在文件夹中包含订单。

如果您调用此文件夹images,则必须将其添加到文件名images/climb.PNG

BTW:在路径中更好地使用/而不是\,因为路径中的\n可以像任何文本一样解释为ENTER/new line

但最合适的是:

import os

filename = os.path.join('images', 'climb.PNG')