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中的pass语句使用方法讲解
May 14 Python
python开发之字符串string操作方法实例详解
Nov 12 Python
浅谈python内置变量-reversed(seq)
Jun 21 Python
Python实现翻转数组功能示例
Jan 12 Python
pygame实现俄罗斯方块游戏
Jun 26 Python
python 实现返回一个列表中出现次数最多的元素方法
Jun 11 Python
python制作简单五子棋游戏
Jun 18 Python
Python实现一个带权无回置随机抽选函数的方法
Jul 24 Python
Python pytesseract验证码识别库用法解析
Jun 29 Python
超级实用的8个Python列表技巧
Aug 24 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
Oct 09 Python
Python中request的基本使用解决乱码问题
Apr 12 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表单提交问题的解决方法
2011/04/12 PHP
jquery autocomplete自动完成插件的的使用方法
2010/08/07 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
jQuery学习笔记之jQuery中的$
2015/01/19 Javascript
jquery实现键盘左右翻页特效
2015/04/30 Javascript
js显示文本框提示文字的方法
2015/05/07 Javascript
BootStrap中的表单大全
2016/09/07 Javascript
jQuery简单获取DIV和A标签元素位置的方法
2017/02/07 Javascript
BootStrap与Select2使用小结
2017/02/17 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
2017/05/03 Javascript
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
小程序开发中如何使用async-await并封装公共异步请求的方法
2019/01/20 Javascript
Vue 实现前端权限控制的示例代码
2019/07/09 Javascript
[33:28]完美世界DOTA2联赛PWL S3 PXG vs GXR 第三场 12.19
2020/12/24 DOTA
使用python实现baidu hi自动登录的代码
2013/02/10 Python
python利用正则表达式搜索单词示例代码
2017/09/24 Python
Python3 中文文件读写方法
2018/01/23 Python
Tensorflow环境搭建的方法步骤
2018/02/07 Python
python psutil库安装教程
2018/03/19 Python
Python3实现腾讯云OCR识别
2018/11/27 Python
Python 做曲线拟合和求积分的方法
2018/12/29 Python
django配置连接数据库及原生sql语句的使用方法
2019/03/03 Python
python文件选择对话框的操作方法
2019/06/27 Python
python实现多线程端口扫描
2019/08/31 Python
python 如何利用argparse解析命令行参数
2020/09/11 Python
布里斯班女装时尚品牌:Adrift
2017/12/28 全球购物
Sunglasses Shop英国:欧洲领先的太阳镜在线供应商之一
2018/09/19 全球购物
MATCHESFASHION澳大利亚/亚太地区:英国时尚奢侈品电商
2020/01/14 全球购物
J2ee常用的设计模式?说明工厂模式
2015/05/21 面试题
年终考核评语
2014/01/19 职场文书
车辆转让协议书
2014/09/24 职场文书
2014年高中教师工作总结
2014/12/19 职场文书
焦裕禄观后感
2015/06/03 职场文书
欢送会主持词
2015/07/01 职场文书
Python 循环读取数据内存不足的解决方案
2021/05/25 Python
JavaScript设计模式之原型模式详情
2022/06/21 Javascript