這篇文章主要介紹了python中pygame針對游戲窗口的顯示方法,以完整實例形式較為詳細的分析了pygame響應鍵盤按鍵改變窗口顯示效果的相關實現技巧,需要的朋友可以參考下
本文實例講述了python中pygame針對游戲窗口的顯示方法。分享給大家供大家參考,具體如下:
在這篇教程中,我將給出一個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
- '''
代碼部分:
- #pygame fullscreen
- import os, pygame
- from pygame.locals import *
- from sys import exit
- '''
- 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
- '''
- __author__ = {'name' : 'Hongten',
- 'mail' : 'hongtenzone@foxmail.com',
- 'Version' : '1.0'}
- BG_IMAGE = 'C://py//bg.png'
- SCREEN_DEFAULT_SIZE = (500, 500)
- pygame.init()
- #create the image path
- bg_path = os.path.join('data', BG_IMAGE)
- if not os.path.exists(bg_path):
- print('The BackGround Image does not exist!')
- screen = pygame.display.set_mode(SCREEN_DEFAULT_SIZE, 0, 32)
- bg = pygame.image.load(bg_path).convert()
- #full screen flag
- full_screen = False
- while 1:
- for event in pygame.event.get():
- if event.type == QUIT:
- exit()
- if event.type == KEYDOWN:
- #when press the 'f',then change the screen display model
- if event.key == K_f:
- full_screen = not full_screen
- if full_screen:
- print('Open the Fullscreen model!')
- else:
- print('Open the Default model!')
- if full_screen:
- #full screen display model
- screen = pygame.display.set_mode(SCREEN_DEFAULT_SIZE, FULLSCREEN, 32)
- else:
- #default model
- screen = pygame.display.set_mode(SCREEN_DEFAULT_SIZE, 0, 32)
- screen.blit(bg, (0, 0))
- pygame.display.update()
完整實例代碼代碼點擊此處本站下載。
希望本文所述對大家Python程序設計有所幫助。
新聞熱點
疑難解答