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


Posted in Python onNovember 11, 2015

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

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

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

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

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

上面给出了一个简单的例子,当然在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程序设计有所帮助。

Python 相关文章推荐
使用Python的Treq on Twisted来进行HTTP压力测试
Apr 16 Python
python的多重继承的理解
Aug 06 Python
一个Python最简单的接口自动化框架
Jan 02 Python
Python面向对象类编写细节分析【类,方法,继承,超类,接口等】
Jan 05 Python
详解Python 字符串相似性的几种度量方法
Aug 29 Python
tensorflow tf.train.batch之数据批量读取方式
Jan 20 Python
基于Tensorflow批量数据的输入实现方式
Feb 05 Python
python解释器pycharm安装及环境变量配置教程图文详解
Feb 26 Python
python适合做数据挖掘吗
Jun 16 Python
Python经纬度坐标转换为距离及角度的实现
Nov 01 Python
Django-simple-captcha验证码包使用方法详解
Nov 28 Python
Python字节单位转换(将字节转换为K M G T)
Mar 02 Python
python基于pygame实现响应游戏中事件的方法(附源码)
Nov 11 #Python
Python基于pygame实现的弹力球效果(附源码)
Nov 11 #Python
Python中pygame安装方法图文详解
Nov 11 #Python
Python基于pygame实现图片代替鼠标移动效果
Nov 11 #Python
python开发之thread线程基础实例入门
Nov 11 #Python
python开发之thread实现布朗运动的方法
Nov 11 #Python
python开发之基于thread线程搜索本地文件的方法
Nov 11 #Python
You might like
PHP脚本的10个技巧(1)
2006/10/09 PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
2010/09/10 PHP
实用的简单PHP分页集合包括使用方法
2013/10/21 PHP
PHP.ini中配置屏蔽错误信息显示和保存错误日志的例子
2014/05/12 PHP
php中数据库连接方式pdo和mysqli对比分析
2015/02/25 PHP
php两种无限分类方法实例
2015/04/21 PHP
详解PHP版本兼容之openssl调用参数
2018/07/25 PHP
javascript 日历提醒系统( 兼容所有浏览器 )
2009/04/07 Javascript
Javascript 面向对象特性
2009/12/28 Javascript
jQuery获取iframe的document对象的方法
2014/10/10 Javascript
Javascript this 关键字 详解
2014/10/22 Javascript
EasyUI实现第二层弹出框的方法
2015/03/01 Javascript
JavaScript模拟实现键盘打字效果
2015/06/29 Javascript
js代码实现随机颜色的小方块
2015/07/30 Javascript
node.js文件上传处理示例
2016/10/27 Javascript
JQuery实现定时刷新功能代码
2017/05/09 jQuery
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
JS中DOM元素的attribute与property属性示例详解
2018/09/04 Javascript
nodejs异步编程基础之回调函数用法分析
2018/12/26 NodeJs
layui table去掉右侧滑动条的实现方法
2019/09/05 Javascript
layui表格 列自动适应大小失效的解决方法
2019/09/06 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
[06:07]DOTA2-DPC中国联赛3月5日Recap集锦
2021/03/11 DOTA
Python 转义字符详细介绍
2017/03/21 Python
解决Python Matplotlib绘图数据点位置错乱问题
2020/05/16 Python
python实现暗通道去雾算法的示例
2020/09/27 Python
selenium判断元素是否存在的两种方法小结
2020/12/07 Python
巴西购物网站:Submarino
2020/01/19 全球购物
Yahoo-PHP面试题2
2014/12/06 面试题
婚前保证书
2014/04/29 职场文书
2014年电工工作总结
2014/11/20 职场文书
史上最牛的辞职信
2015/02/28 职场文书
丧事主持词
2015/07/02 职场文书
2021年最新用于图像处理的Python库总结
2021/06/15 Python
Python可视化学习之seaborn调色盘
2022/02/24 Python