首页 > 其他分享 >pygame.display 创建窗口

pygame.display 创建窗口

时间:2024-12-06 16:34:28浏览次数:3  
标签:set 窗口 参数 blit display pygame

 1 import pygame
 2 
 3 def main():
 4     # 1.创建窗口
 5     chuangkou = pygame.display.set_mode((493, 770))
 6     pygame.display.set_caption('飞机大战小游戏')
 7     # 2.加载背景图
 8     bg = pygame.image.load('img/bg.png')
 9     # 3.窗口贴图
10     chuangkou.blit(bg, (0, 0))
11     # 4.显示窗口
12     pygame.display.update()
13     pygame.time.delay(2000)
14 
15 if __name__ == '__main__':
16     main()

pygame.display

此模块控制显示窗口和屏幕
  • display.set_mode()

    • 初始化窗口或屏幕进行显示

        set_mode(size=(0, 0), flags=0, depth=0, display=0, vsync=0)

    • size 参数表示窗口大小(宽度,高度);

      flags 参数控制显示的类型。详细信息查看文档。如果传递0或没有flags参数,则将默认为软件驱动的窗口。

      depth深度参数表示用于颜色的位数。通常不传深度参数,默认为系统的最佳和最快的颜色深度。如果您的游戏需要特定的颜色格式,您可以使用此参数控制深度。

      vsync 参数设置为 1,可以获得具有垂直同步的显示,但不能保证获得,获得的内容取决于 pygame 运行系统的硬件和驱动程序配置。

  • display.set_caption()

    • 设置当前的窗口标题

        set_caption(title, icontitle=None)

    • 如果显示器有窗口标题,此函数将更改窗口上的名称。
  • display.update()

    • 更新显示的部分屏幕
    • 此函数类似于pygame.display.flip() 的优化版本。它只允许更新屏幕的一部分,而不是整个区域。如果没有传递参数,它会像 pygame.display.flip() 一样更新整个区域。此调用不能在 pygame.OPENGL 显示上使用,会发生异常。

pygame.image

此模块用于图像的传输

  • image.load()

    • load(filename)
    • 从文件源加载图像。您可以传递文件名、类似 Python 文件的对象或 pathlib.Path。此函数支持以下格式:BMP、GIF(non-animated)、JPEG、LBM (and PBMPGMPPM)、PCX、PNG、PNM、SVG (limited support, using Nano SVG)、TGA (uncompressed)、TIFF、WEBP、XPM。

pygame.time

时间监控模块

  • time.delay()

    • delay(milliseconds)
    • 暂停程序一段时间,将暂停给定的毫秒数。该函数使用处理器(而不是休眠),其延迟比 pygame.time.wait() 更准确。

其他模块

pygame.Surface.blit()

  • 将一幅图像绘制到另一幅图像上
  • blit(source, dest, area=None, special_flags=0) -> Rect
  • 可以使用 dest 参数来定位绘图。 dest 参数可以是一对表示 blit 左上角位置的坐标,也可以是一个 Rect,其中矩形的左上角将用作 blit 的位置。目标矩形的大小不会影响位块传输。

标签:set,窗口,参数,blit,display,pygame
From: https://www.cnblogs.com/zutterlly/p/18588058

相关文章

  • 【双指针进阶】深入理解双指针作用——滑动窗口题型带你一网打尽!
    文章目录长度最小的子数组无重复字符的最长子串最大连续1的个数|||将X减到0的最小操作数水果成篮找到字符串中所有字母的异位词串联所有单词的子串最小覆盖子串长度最小的子数组解题思路:使用两个指针begin和end构建滑动窗口,begin表示窗口的左边界,end表示右边界。......
  • pygame:python编写的坦克大战游戏(多年前网上找到的资源,来源已不可考)
    游戏项目的源码地址:https://openi.pcl.ac.cn/devilmaycry812839668/Tank_Game_1990pygame:python编写的坦克大战游戏(多年前网上找到的资源,来源已不可考),本人小的时候最喜欢玩的就是小霸王学习机上的黄卡游戏,而在这些72合一的黄卡游戏中我最为喜欢的就是这个坦克大战的游戏,虽然过......
  • Python基于滑动窗口CNN损伤梁桥数据、故宫城墙图像数据分类可视化|附数据代码
    全文链接:https://tecdat.cn/?p=38442原文出处:拓端数据部落公众号分析师:YufeiGuo在现代土木结构工程领域,结构损伤的准确识别与定位对于保障基础设施的安全性和耐久性具有极为关键的意义。传统的人工检查方法,如目视检查以及借助专业设备进行检测,在很长一段时间内占据着主导地位,......
  • hot100-一刷-03滑动窗口(共2道题)
    3.无重复字符的最长子串题目链接题目描述代码实现分析:因为是要连续的序列,使用滑动窗口+Set集合来判断即将要加入窗口右端的元素是已经在窗口中出现过。代码:classSolution{publicintlengthOfLongestSubstring(Strings){intans=0;//Set......
  • [数组滑动窗口] 0995. K连续位的最小翻转次数
    文章目录1.题目链接2.题目大意3.示例4.解题思路5.参考代码1.题目链接https://leetcode.cn/problems/minimum-number-of-k-consecutive-bit-flips/description/2.题目大意描述:给定一个仅包含0和1的数组numsnums,再给定一个整数k。进行一次k位翻......
  • [数组滑动窗口] 0438. 找到字符串中所有字母异位词
    文章目录1.题目链接2.题目大意3.示例4.解题思路5.参考代码1.题目链接https://leetcode.cn/problems/find-all-anagrams-in-a-string/description/2.题目大意描述:给定两个字符串s和p。要求:找到s中所有p的异位词的子串,返回这些子串的起始索引。......
  • [数组滑动窗口] 0220. 存在重复元素三
    文章目录1.题目链接2.题目大意3.示例4.解题思路5.参考代码1.题目链接https://leetcode.cn/problems/contains-duplicate-iii/description/2.题目大意描述:给定一个整数数组nums,以及两个整数k、t。要求:判断数组中是否存在两个不同下标的i和j,其对应......
  • [原创]lazarus在(linux)设置应用在任务栏单一窗口图标显示
    如果lazarus的(linux)应用有多个form,并且form用show显示,在任务栏就会显示多个form的图标,个人感觉比较乱。如果只想显示主form图标,可以在projecr的lpk增加:Application.TaskBarBehavior:=tbSingleButton;以下是完整的lpk:programproject1;{$modeobjfpc}{$H+}uses{......
  • 用js写一个绑定事件检测窗口大小
    functionhandleResize(){constwidth=window.innerWidth;constheight=window.innerHeight;//在这里执行你想要的操作,例如更新布局或显示不同的内容console.log(`窗口宽度:${width}px,窗口高度:${height}px`);//一些例子://if(width<768){///......
  • 切换标签窗口后js定时器自动停止了,如何在激活标签后又继续呢?
    JavaScript定时器在标签页失去焦点(例如切换到其他标签页或最小化浏览器)时,会被浏览器降低优先级或暂停,以节省资源。这会导致定时器不准确,甚至看起来停止了。要解决这个问题,你需要使用requestAnimationFrame或手动调整时间差。1.使用requestAnimationFrame(推荐)requestAnim......