这次我们对第一节的代码进行一些加工:
1.变为按下F11变为全屏
在while循环中添加如下代码
if event.key == K_F11: fullscreen =not fullscreen if fullscreen: screen =pygame.display.set_mode((1024,768),FULLSCREEN |HWSURFACE) else: screen = pygame.display.set_mode(size)
这样就会在按下F11后变为你设置的大小
当然每个用户的电脑所支持的分辨率,可以用display的list_modes()获得该电脑所支持的所有分辨率,然后在程序中选择第一个即为全屏
为了能使得窗口可以进行拖动放大可以进行以下修改‘’‘import pygame
import sys
from pygame.locals import*
#初始化pygame
pygame.init()
size = width,height =1000,800
speed = [-2,1]
bg=(255,255,255)
fullscreen = False
#创建指定大小的窗口 surface
screen =pygame.display.set_mode(size,RESIZABLE)
#设置窗口标题
pygame.display.set_caption(“第一个游戏”)
#加载图片
turtle=pygame.image.load(“timg.png”)
#获得图像的位置矩阵
position = turtle.get_rect()
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]
if event.key ==K_RIGHT:
speed =[1,0]
if event.key ==K_UP:
speed =[0,-1]
if event.key ==K_DOWN:
speed=[0,1]
if event.key == K_F11:
fullscreen =not fullscreen
if fullscreen:
screen =pygame.display.set_mode((1024,768),FULLSCREEN |HWSURFACE)#全屏
else:
screen = pygame.display.set_mode(size)
if event.type ==VIDEORESIZE:#将你所调整的窗口大小赋值给size
size = event.size
width,height =size
print(size)#打印你现在的尺寸
screen = pygame.display.set_mode(size,RESIZABLE)#重新创建窗口
#移动图像
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()
pygame.time.delay(10)
’‘’
结果如下
补充以下资料可以更好完善代码