python中pygame针对游戏窗口的显示方法实例分析(附源码)

yipeiwu_com6年前Python基础

本文实例讲述了python中pygame针对游戏窗口的显示方法。分享给大家供大家参考,具体如下:

在这篇教程中,我将给出一个demo演示:

当我们按下键盘的‘f'键的时候,演示的窗口会切换到全屏显示和默认显示两种显示模式

并且在后台我们可以看到相关的信息输出:

上面给出了一个简单的例子,当然在pygame的官方文档中有对显示策略的更权威的说明:

http://www.pygame.org/docs/ref/display.html

'''
  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程序设计有所帮助。

相关文章

python multiprocessing多进程变量共享与加锁的实现

python多进程和多线程是大家会重点了解的部分,因为很多工作如果并没有前后相互依赖关系的话其实顺序并不是非常的重要,采用顺序执行的话就必定会造成无谓的等待,任凭cpu和内存白白浪费,这...

pandas把dataframe转成Series,改变列中值的类型方法

使用 pd.Series把dataframe转成Series ts = pd.Series(df['Value'].values, index=df['Date']) 使用asty...

Python基本类型的连接组合和互相转换方式(13种)

Python基本类型的连接组合和互相转换方式(13种)

本篇总结了一下字符串,列表,字典,元组的连接组合使用和类型的互相转换小例子,尤其列表中的extend()方法和字典中的 update方法非常的常用。 1.连接两个字符串 a = "...

PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法

PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法

本文主要介绍PyQt界面实现中常用的消息弹出对话框、提供用户输入的输入框、打开文件获取文件/目录路径的文件对话框。学习这三种控件前,先想一下它们使用的主要场景:   1、消息弹...

Linux下Pycharm、Anaconda环境配置及使用踩坑

Linux下Pycharm、Anaconda环境配置及使用踩坑

配置环境花了我一下午的时间,简单记录一下,希望能帮到一些新手。 1、下载PyCharm:https://www.jetbrains.com/pycharm/download/ 下载完成后...