我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Pygame Display显示模块的使用方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Pygame Display显示模块的使用方法

Pygame 使用pygame.display显示模块中的方法创建游戏的主窗口:


screen = pygame.display.set_mode(size=(),flags=0)

上述函数有两个参数常用参数:

  • size:元组参数,用来设置主窗口的大小
  • flags:功能标志位,表示创建的主窗口样式,比如创建全屏窗口、无边框窗口等,flags 参数值见下表。

标志位 功能
pygame.FULLSCREEN 创建一个全屏窗口。
pygame.HWSURFACE 创建一个硬件加速窗口,必须和 FULLSCREEN 同时使用。
pygame.OPENGL 创建一个 OPENGL 渲染窗口。
pygame.RESIZABLE 创建一个可以改变大小的窗口。
pygame.DOUBLEBUF 创建一个双缓冲区窗口,建议在 HWSURFACE 或者 OPENGL 时使用。
pygame.NOFRAME 创建一个没有边框的窗口。

体验过电脑游戏的朋友们都知道,当运行程序后会在电脑桌面上出现一个游戏的主窗口,这个主窗口的本质是一个 surface 对象,把理解为画布、画板、白纸在合适不过了,它相当于一个载体,用于承载一切游戏所用到的元素。假如您需要将一段文本方放置到主窗口中,那么您需要先创建一个包含文本的 surface 对象,之后再将它附加到主窗口上。简单的理解,就是将一张图 A 粘贴到另一张图 B 上。

主窗口(screen)相当于游戏程序中尺寸最大的 Surface 对象,在这个最大的“画布”中,我们还可以添加其他“小”的 Surface 对象,这些对象以矩形的形式存在于主窗口中,它们共同组成了一个游戏程序。通过下列方法可以将一个 Surface 对象粘贴至主窗口上:


scrren.blit(source, dest, area=None, special_flags = 0)

下面对上述参数做简单的介绍:

  • source:表示要粘贴的 Surface 对象。
  • dest:主窗口中的一个标识的坐标位置,可以接受一个 (x,y) 元组,或者 (x,y,width,height) 元组,也可以是一个 Rect 对象;
  • area:接受一个 Rect 对象,默认为 None,如果提供该参数则相当于抠图操作,即在屏幕的指定区域显示想要的内容;
  • special_flags:可选参数,它是 Pygame.1.8 版本新增的功能,用于指定对应位置颜色的混合方式,参数值有 BLEND_RGBA_ADD、BLEND_SUB 等。如果不提供该参数的情况下,默认使用 source 的颜色覆盖 screen 的颜色。

除了创建游戏的主窗口之外,display 模块还提供了许多的和“显示”相关的方法,比如设置游戏窗口的名称,如下表所示


import sys
import pygame
#使用pygame之前必须初始化
pygame.init()
#设置主屏窗口
screen = pygame.display.set_mode((400,400))
#填充主窗口的背景颜色,参数值RGB(颜色元组)
screen.fill((156,156,156))
#设置窗口标题
pygame.display.set_caption('c语言中文网')
# 如果没有下列主循环代码,运行结果会一闪而过
while True:
    # 循环获取事件,监听事件
    for event in pygame.event.get():
        # 判断用户是否点了关闭按钮
        if event.type == pygame.QUIT:
            #卸载所有模块
            pygame.quit()
            #终止程序
            sys.exit()
    #更新屏幕内容
    pygame.display.flip()

程序的运行结果如下所示:

pygame.display 模块还提供了一些和“显示”相关的其他方法,如下表所示:

方法名称 说明
pygame.display.get_surface() 获取当前显示的 Surface 对象。
pygame.display.flip() 更新整个待显示的 Surface 对象到屏幕上。
pygame.display.update() 更新部分软件界面显示。
pygame.display.Info() 产生一个 VideoInfo 对象,包含了显示界面的相关信息。
pygame.display.set_icon() 设置左上角的游戏图标,图标尺寸大小为 32*32。
pygame.display.iconify() 将显示的主窗口即 Surface 对象最小化,或者隐藏。
pygame.display.get_active() 当前显示界面显示在屏幕上时返回 True,如果窗口被隐藏和最小化则返回 False。

到此这篇关于Pygame Display显示模块的使用方法的文章就介绍到这了,更多相关Pygame Display显示模块内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Pygame Display显示模块的使用方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python导入pygame模块的方法

这篇“python导入pygame模块的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python导入pygame模块的
2023-06-30

使用SPACEDESK时iPad显示Connected-Display OFF解决方法

使用SPACEDESK时iPad显示Connected-Display OFF 1. SPACEDESK 概述2. 使用SPACEDESK时iPad显示Connected-Display OFF解决方法结束语 1. SPACED
2023-08-19

mysql模块的使用方法

这篇文章主要讲解了“mysql模块的使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql模块的使用方法”吧!1、在使用之前,创建一个名为demo的数据库,同时定义一个名为demo
2023-06-20

织梦“模块管理”里面的“模块列表”显示空白的解决方法

织梦系统上传到空间之后,点击“模块管理”里面的“模块列表”显示空白的解决办法问题描述:本地测试正常编程客栈,上传到空间后列表空白,重新安装都是空白,空间所有文件使用 777 权限都一编程客栈样
2022-06-12

Python使用pygame模块编写俄罗斯方块游戏的代码实例

文章先介绍了关于俄罗斯方块游戏的几个术语。边框——由10*20个空格组成,方块就落在这里面。盒子——组成方块的其中小方块,是组成方块的基本单元。方块——从边框顶掉下的东西,游戏者可以翻转和改变位置。每个方块由4个盒子组成。形状——不同类型的
2022-06-04

使用PyGame显示图像的四种方案实例代码

由于前面学习了使用pygame的简单操作,现在学习当前的pygame怎么加载图片,下面这篇文章主要给大家介绍了关于使用PyGame显示图像的四种方案,文中通过图文介绍的非常详细,需要的朋友可以参考下
2022-12-27

Python中concurrent.futures模块的使用方法

这篇文章主要介绍了Python中concurrent.futures模块的使用方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、说明标准库为我们提供了concurrent
2023-06-15

dedecms后台模块管理空白不显示的解决方法

近日,网站在通过dedecms后台的模块管理上传插件后,不知道安编程客栈装了什么插件导致dedecms后台的模块管理空白,内容全部不显示,找到了解决办法!dedecms后台的模块管理设计到的文件为: /data/module/moduleu
2022-06-12

python中sys模块的使用方法

小编给大家分享一下python中sys模块的使用方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;4.twisted
2023-06-14

Node.js使用方式及模块化的方法

本篇内容介绍了“Node.js使用方式及模块化的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是Node.js ?Node.js 是
2023-06-29

Python中time模块和datetime模块的用法示例

time模块方法: time.time():获取当前时间的时间戳 time.localtime():接受一个时间戳,并把它转化为一个当前时间的元组。不给参数的话就会默认将time.time()作为参数传入time.localtime():索
2022-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录