两个案例
第一个将所有事件都写入文件,并且打印到屏幕上面
import pygame
import sys
#初始化pygame
pygame.init()
size = width,height = 600,400
screen = pygame.display.set_mode(size)
pygame.display.set_caption(
bg = (0,0,0)
position = 0
font = pygame.font.Font(None,20)
line_height = font.get_linesize()
screen.fill(bg)
f = open("record.txt",
while True:
for event in pygame.event.get():
f.write(str(event) +
if event.type == pygame.QUIT:
f.close()
sys.exit()
screen.blit(font.render(str(event),True,(0,255,0)),(0,position))
position += line_height
if(position > height):
position = 0
screen.fill(bg)
pygame.display.flip()
修改游戏代码,使图片收到控制
import pygame
import sys
from pygame.locals import *
#初始化pygame
pygame.init()
size = width,height = 600,400
speed = [-2,1]
bg = (255,255,255)#RGB
clock = pygame.time.Clock()
#创建指定大小的窗口
screen = pygame.display.set_mode(size)
#设置窗口标题
pygame.display.set_caption(
#加载图片
turtle = pygame.image.load("D:/Study/2.gif")
#获得图像的位置矩形
position = turtle.get_rect()
l_head = turtle
r_head = pygame.transform.flip(turtle,True,False)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
if event.type == pygame.KEYDOWN:
if event.key == K_LEFT:
turtle = l_head
speed = [-1,0]
if event.key == K_RIGHT:
turtle = r_head
speed = [1,0]
if event.key == K_UP:
speed = [0,-1]
if event.key == K_DOWN:
speed = [0,1]
#移动图像
position = position.move(speed)
if position.left < 0 or position.right > width:
#翻转图像
turtle = pygame.transform.flip(turtle,True,False)
#反方向移动
speed[0] = -speed[0]
if position.top < 0 or position.bottom > height:
speed[1] = -speed[1]
#填充背景
screen.fill(bg)
#更新图像
screen.blit(turtle,position)
#更新界面
pygame.display.flip()
#延迟10秒
#pygame.time.delay(50)
#设置帧率
clock.tick(200)