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 snownlp情感分析简易demo(分享)
Jun 04 Python
python opencv之SURF算法示例
Feb 24 Python
Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法
May 04 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
May 08 Python
python使用for循环计算0-100的整数的和方法
Feb 01 Python
python开发准备工作之配置虚拟环境(非常重要)
Feb 11 Python
python字符串替换第一个字符串的方法
Jun 26 Python
python文件操作的简单方法总结
Nov 07 Python
Python调用scp向服务器上传文件示例
Dec 22 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
Jan 06 Python
用Python将库打包发布到pypi
Apr 13 Python
python自动化测试通过日志3分钟定位bug
Nov 20 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
使用网络地址转换实现多服务器负载均衡
2006/10/09 PHP
php类自动加载器实现方法
2015/07/28 PHP
laravel实现一个上传图片的接口,并建立软链接,访问图片的方法
2019/10/12 PHP
window.onload 加载完毕的问题及解决方案(上)
2009/07/09 Javascript
javascript 页面只自动刷新一次
2009/07/10 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
2013/04/11 Javascript
Egret引擎开发指南之运行项目
2014/09/03 Javascript
javascript实现点击按钮让DIV层弹性移动的方法
2015/02/24 Javascript
面向切面编程(AOP)的理解
2015/05/01 Javascript
JavaScript实现省市县三级级联特效
2017/05/16 Javascript
JavaScript之Canvas_动力节点Java学院整理
2017/07/04 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
vue移动端微信授权登录插件封装的实例
2018/08/28 Javascript
关于layui时间回显问题的解决方法
2019/09/24 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
使用node-media-server搭建一个简易的流媒体服务器
2021/01/20 Javascript
Python实现程序判断季节的代码示例
2019/01/28 Python
关于Python作用域自学总结
2019/06/10 Python
python binascii 进制转换实例
2019/06/12 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
Python+unittest+DDT实现数据驱动测试
2020/11/30 Python
HTTP状态码详解
2021/03/18 杂记
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
2020/04/08 HTML / CSS
西雅图的买手店:Totokaelo
2019/10/19 全球购物
CAT鞋加拿大官网:CAT Footwear加拿大
2020/08/05 全球购物
Napapijri西班牙在线商店:夹克、外套、运动衫等
2020/11/05 全球购物
用C语言实现文件读写操作
2013/10/27 面试题
审核会计岗位职责
2013/11/08 职场文书
车间组长岗位职责
2013/12/20 职场文书
销售演讲稿范文
2014/01/08 职场文书
人事部经理岗位职责
2014/03/07 职场文书
企业新年寄语
2014/04/04 职场文书
解除合同协议书
2014/04/17 职场文书
2014年工程工作总结
2014/11/25 职场文书
初中班主任心得体会
2016/01/07 职场文书