pygame第三节

这次我们对第一节的代码进行一些加工:
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)
’‘’

结果如下
在这里插入图片描述
补充以下资料可以更好完善代码在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章