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实现快速排序算法及去重的快速排序的简单示例
Jun 26 Python
python脚本监控Tomcat服务器的方法
Jul 06 Python
python列表,字典,元组简单用法示例
Jul 11 Python
Python实现最常见加密方式详解
Jul 13 Python
Python企业编码生成系统之主程序模块设计详解
Jul 26 Python
详解python中自定义超时异常的几种方法
Jul 29 Python
python mqtt 客户端的实现代码实例
Sep 25 Python
python实现图片插入文字
Nov 26 Python
python Manager 之dict KeyError问题的解决
Dec 21 Python
Python3中configparser模块读写ini文件并解析配置的用法详解
Feb 18 Python
keras CNN卷积核可视化,热度图教程
Jun 22 Python
容易被忽略的Python内置类型
Sep 03 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
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
php获取mysql版本的几种方法小结
2008/03/25 PHP
php函数间的参数传递(值传递/引用传递)
2013/09/23 PHP
php遍历目录输出目录及其下的所有文件示例
2014/01/27 PHP
destoon利用Rewrite规则设置网站安全
2014/06/21 PHP
php实现源代码加密的方法
2015/07/11 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
2020/10/30 PHP
关于js datetime的那点事
2011/11/15 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
2016/01/19 Javascript
vue cli升级webapck4总结
2018/04/04 Javascript
vue2.0 下拉框默认标题设置方法
2018/08/22 Javascript
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
2019/06/04 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
bootstrap-table后端分页功能完整实例
2020/06/01 Javascript
vant 解决tab切换插件标题样式自定义的问题
2020/11/13 Javascript
vue中echarts的用法及与elementui-select的协同绑定操作
2020/11/17 Vue.js
[36:17]DOTA2上海特级锦标赛 - VGL音乐会全集
2016/03/06 DOTA
[01:11:15]VGJ.S vs Secret 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python 操作mysql数据库查询之fetchone(), fetchmany(), fetchall()用法示例
2019/10/17 Python
Python编程快速上手——Excel表格创建乘法表案例分析
2020/02/28 Python
python属于解释语言吗
2020/06/11 Python
Django Admin 上传文件到七牛云的示例代码
2020/06/20 Python
Python实现播放和录制声音的功能
2020/08/12 Python
Python基于mediainfo批量重命名图片文件
2020/12/29 Python
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
《小池塘》教学反思
2014/02/28 职场文书
微笑面对生活演讲稿
2014/05/13 职场文书
小学语文业务学习材料
2014/06/02 职场文书
计算机多媒体专业自荐信
2014/07/04 职场文书
2014年食堂工作总结
2014/11/20 职场文书
同学毕业留言寄语
2015/02/27 职场文书
大学校园招聘会感想
2015/08/10 职场文书
利用Pycharm连接服务器的全过程记录
2021/07/01 Python
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB