pygame系列_游戏窗口显示策略
在这篇blog中,我将给出一个demo演示:
当我们按下键盘的‘f’键的时候,演示的窗口会切换到全屏显示和默认显示两种显示模式
并且在后台我们可以看到相关的信息输出:
上面给出了一个简单的例子,当然在pygame的官方文档中有对显示策略的更权威的说明:
http://www.pygame.org/docs/ref/display.html#pygame.display.set_mode
''' pygame.FULLSCREEN create a fullscreen display pygame.DOUBLEBUF recommended for HWSURFACE or OPENGL pygame.HWSURFACE hardware accelerated, only in FULLSCREEN pygame.OPENGL create an opengl renderable display pygame.RESIZABLE display window should be sizeable pygame.NOFRAME display window will have no border or controls '''
==========================================================
代码部分:
==========================================================
1 #pygame fullscreen 2 3 import os, pygame 4 from pygame.locals import * 5 from sys import exit 6 7 ''' 8 pygame.display.set_mode(): 9 pygame.FULLSCREEN create a fullscreen display 10 pygame.DOUBLEBUF recommended for HWSURFACE or OPENGL 11 pygame.HWSURFACE hardware accelerated, only in FULLSCREEN 12 pygame.OPENGL create an opengl renderable display 13 pygame.RESIZABLE display window should be sizeable 14 pygame.NOFRAME display window will have no border or controls 15 ''' 16 17 __author__ = {'name' : 'Hongten', 18 'mail' : 'hongtenzone@foxmail.com', 19 'blog' : 'http://www.cnblogs.com/hongten', 20 'Version' : '1.0'} 21 22 BG_IMAGE = 'bg.png' 23 SCREEN_DEFAULT_SIZE = (500, 500) 24 pygame.init() 25 26 #create the image path 27 bg_path = os.path.join('data', BG_IMAGE) 28 if not os.path.exists(bg_path): 29 print('The BackGround Image does not exist!') 30 31 screen = pygame.display.set_mode(SCREEN_DEFAULT_SIZE, 0, 32) 32 bg = pygame.image.load(bg_path).convert() 33 34 #full screen flag 35 full_screen = False 36 37 while 1: 38 for event in pygame.event.get(): 39 if event.type == QUIT: 40 exit() 41 if event.type == KEYDOWN: 42 #when press the 'f',then change the screen display model 43 if event.key == K_f: 44 full_screen = not full_screen 45 if full_screen: 46 print('Open the Fullscreen model!') 47 else: 48 print('Open the Default model!') 49 if full_screen: 50 #full screen display model 51 screen = pygame.display.set_mode(SCREEN_DEFAULT_SIZE, FULLSCREEN, 32) 52 else: 53 #default model 54 screen = pygame.display.set_mode(SCREEN_DEFAULT_SIZE, 0, 32) 55 56 screen.blit(bg, (0, 0)) 57 pygame.display.update()
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步