python pygame运行问题

#-*-coding:cp936-*-importsys,pygamefrompygame.localsimport*fromrandomimportrandrangec... # -*- coding: cp936 -*-
import sys,pygame
from pygame.locals import *
from random import randrange

class weight(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.image=weight_image
self.rect=self.image.get_rect()
self.reset()

def reset(self):
"""
把秤砣移动到屏幕顶端的随机位置。
"""
self.rect.top = -self.rect.height
self.rect.centerx = randrange(screen_size[0])

def update(self):
"""
更新秤砣,显示下一帧
"""
self.rect.top += 1
if self.rect.top > screen_size[1]:
self.reset()

#初始化
pygame.init()
screen_size=800,600
pygame.display.set_mode(screen_size)
#pygame.mouse.set_visible(0)

#载入秤砣的图像
weight_image=pygame.image.load("weight.png")
weight_image=weight_image.convert()

#创建一个子图形组
sprites=pygame.sprite.RenderPlain()
sprites.add(weight())

#获取屏幕表面,并且填充
screen=pygame.display.get_surface()
bg=(255,255,255)
screen.fill(bg)
pygame.display.flip()

#用于清除子图形
def clear_callback(surf,rect):
surf.fill(bg,rect)

while True:
for event in pygame.event.get():
if event.type==QUIT:
sys.exit()
if event.type==KEYDOWN and event.key==K_ESCAPE:
sys.exit()

#清除前面位置
sprites.clear(screen,clear_callback)
#更新所有子图形
sprites.update()
#绘制所有子图形
updates=sprites.draw(screen)
#更新所需的显示部分
pygame.display.update(updates)

我运行这个怎么就是一个白屏幕呢?weight.png这个图片add不进去还是怎么回事?
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
t59616
2015-04-24 · TA获得超过784个赞
知道小有建树答主
回答量:319
采纳率:50%
帮助的人:342万
展开全部
updates=sprites.draw(screen) 这是只画了屏幕,就是白色的部分,虽然加载图片了,但是并没有blit到screen上,试下screen.blit(weight_image,(0,0)),就会被添加到屏幕上了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dxj77625
2015-02-26
知道答主
回答量:1
采纳率:0%
帮助的人:1276
展开全部
把最后四行代码缩进下放到while块中就对了哈
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友95005f4
2014-11-29 · 超过47用户采纳过TA的回答
知道小有建树答主
回答量:111
采纳率:0%
帮助的人:94.9万
展开全部
是放到当前目录吗?运行路径是可执行文件当前路径吗
追问
是的 我把它们都放一个目录下边了
追答
运行路径要是可执行文件当前路径,还有就是不要是中文路径
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式