马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import pygame
import sys
from pygame.locals import * #将python所有的常量名导入
pygame.init()
size = width,height = 600,400
speed = [-2,1]
bg = (255,255,255)
fullscreen = False
clock = pygame.time.Clock()
screen = pygame.display.set_mode(size,RESIZABLE)
pygame.display.set_caption("控制移动")
girl = pygame.image.load("1.png")
position = girl.get_rect()
l_head = girl #面向左
r_head = pygame.transform.flip(girl,True,False) #面向右
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
if event.type == KEYDOWN:
if event.key == K_LEFT:
speed = [-1,0]
girl = l_head
if event.key == K_RIGHT:
speed = [1,0]
girl = r_head
if event.key == K_UP:
speed = [0,-1]
if event.key == K_DOWN:
speed = [0,1]
#全屏(F11)
if event.key == K_F11:
fullscreen = not fullscreen
if fullscreen:
size1 = pygame.display.list_modes()
width,height = size1[0]
#position = girl.get_rect()
screen = pygame.display.set_mode(size1[0],FULLSCREEN | HWSURFACE)
else:
size = width,height = 600,400
position = girl.get_rect()
screen = pygame.display.set_mode(size)
if event.type == VIDEORESIZE:
size = event.size
width,height = size
screen = pygame.display.set_mode(size,RESIZABLE)
position = position.move(speed)
#print("%d\t%d" % (position[0],position[1]))
#图片尺寸50*69
if position[0] > width -48:
position[0] = width - 50
if position[1] > height -67:
position[1] = height - 69
if position.left < 0 or position.right >width:
girl = pygame.transform.flip(girl,True,False)
speed[0] = -speed[0]
if position.top < 0 or position.bottom > height:
speed[1] = -speed[1]
screen.fill(bg)
screen.blit(girl,position)
pygame.display.flip()
clock.tick(200)
代码加了窗口可变功能后,按F11键全屏会有bug,按F11窗口的左、上边位置不变,屏幕左边和上边就有一条缝隙可以看见桌面 |