首页 > 其他分享 >pygame基础功能总结

pygame基础功能总结

时间:2024-12-25 21:31:58浏览次数:3  
标签:总结 功能 pygame image display Pygame event 255

1.导入Pygame模块

(1) 模块并初始化

① Import pygame

② Pygame.init()

(2) 创建窗体

① Window_size = (800,600)  长宽

② Screen= pygame.disply.set_mode(Window_size)

③ pygame.disply.set_caption(“My First Pygame Window”)  设置窗体标题

(3) 主循环

① Running = True   主循环标志

② while running:

for event in pygame.event.get():      事件遍历

if event.type == pygame.QUIT:

Running =False

Pygame.quit()    退出

2.绘制图形

(1) 设置颜色

① WHITE = (255,255,255)

② BLACK = (0,0,0)

③ RED = (255,0,0)

④ GREEN = (0,255,0)

⑤ BLUE = (0,0,255)

(2) 绘制矩形

① pygame.draw.rect(screen,RED,(100,100,50,50))

② pygame.draw.circle(screen,BLUE,(200,200),30)

(3) 更新屏幕

① Pygame.display.flip()    更新整个待显示的Surface对象到屏幕上

② Pygame.display.update()  更新部分内容显示到屏幕上,如果没有参数,则与flip功能相同

 

3.加载图像和显示图形

(1) Player_image = pygame.image.load(‘play.png’)  加载图形

① Pygame.image.load(‘’).convert_alpha   # convert_alpha相对于convert,保留了图像的Alpha 通道信息,可以认为是保留了透明的部分,实现了透明转换,相比较直接使用load提高了blit的速度

(2) Screen.blit(Player_image,(100,100))  #显示图形(图片,位置)

4.处理键盘输入

(1) 检测键盘事件

① For event in pygame.event.get():

  If event.type == pygame.KEYDOWN:    键盘按下事件

    if event.key == pygame.K_LEFT:   按下Left

      Pass

(2) 鼠标输入

  ① For event in pygame.event.get():

    If event.type ==pygame.MOUSEBUTTONDOWN: 鼠标按下

      Pass

 

5.背景音乐和音效的添加

(1) 初始化混音器

  ① Pygame.mixer.init()

(2) 加载和播放背景音乐

  ① Pygame.mixer.music.load(‘xxxx.mp3’)   加载

  ② Pygame.mixer.msic.play(-1) -1 表示循环播放

(3) 加载和播放音效

  ① Collision_sound = pygame.mixer.Sound(‘collision.wav’)

  ② Collision_sound.play()

6.动画与帧率的控制值

(1) 控制帧率

  ① Clock = pygame.time.clock()  创建时钟对象

     Clock.tick(60)      设置帧率为60FPS

 

 1 import  pygame
 2 pygame.init()
 3 
 4 window_size = (800, 600)
 5 screen = pygame.display.set_mode(window_size)
 6 pygame.display.set_caption("窗体名称")
 7 running = True  # 主循环标志
 8 clock = pygame.time.Clock()  # 创建时钟对象
 9 player_image = [pygame.image.load(r'xxx\Peashooter_{:02d}.png'.format(i)).convert_alpha() for i in range(0, 25)]  # 加载图片
10 index = 0
11 while running:  # 主循环
12 
13     screen.fill((255,255,255))  #背景纯白
14     screen.blit(player_image[index % len(player_image)], (2, 2))  #图片显示
15     pygame.display.update()   #参数是个矩形样式或矩形样式的序列
16     # pygame.display.flip()
17     for event in pygame.event.get():  # 事件遍历
18         if event.type == pygame.QUIT:
19             running = False
20         if event.type == pygame.MOUSEBUTTONDOWN:
21             index +=1   #点击更新图片
22 
23 
24     clock.tick(60)  # 设置帧率为60FPS

 

标签:总结,功能,pygame,image,display,Pygame,event,255
From: https://www.cnblogs.com/400-500/p/18631433

相关文章

  • 基于SpringBoot在线音乐系统平台功能实现十二
    一、前言介绍:1.1项目摘要随着互联网技术的迅猛发展和普及,人们对音乐的获取和欣赏方式发生了巨大改变。传统的音乐播放方式,如CD、磁带或本地下载的音乐文件,已经不能满足用户日益增长的需求。用户更希望通过网络直接获取各种类型的音乐,并享受随时随地的音乐播放服务。现代......
  • 基于SpringBoot在线音乐系统平台功能实现十三
    一、前言介绍:1.1项目摘要随着互联网技术的迅猛发展和普及,人们对音乐的获取和欣赏方式发生了巨大改变。传统的音乐播放方式,如CD、磁带或本地下载的音乐文件,已经不能满足用户日益增长的需求。用户更希望通过网络直接获取各种类型的音乐,并享受随时随地的音乐播放服务。现代......
  • 基于SpringBoot在线音乐系统平台功能实现十四
    一、前言介绍:1.1项目摘要随着互联网技术的迅猛发展和普及,人们对音乐的获取和欣赏方式发生了巨大改变。传统的音乐播放方式,如CD、磁带或本地下载的音乐文件,已经不能满足用户日益增长的需求。用户更希望通过网络直接获取各种类型的音乐,并享受随时随地的音乐播放服务。现代......
  • 珂朵莉树总结
    常常用于维护颜色段。随机数据下表现优秀,但构造数据随便卡。一定要看是否保证了数据随机。前置STL之set。set内部是红黑树,内部不会出现值相同的元素。可重集使用multiset,用法基本与set一致。插入删除以下简写set<type>::iterator为iters.insert(x),插入值为x的元素,返回pair......
  • 3款.NET开源、功能强大的通讯调试工具,效率提升利器!
    前言今天大姚给大家分享3款.NET开源、功能强大的通讯调试工具,帮助大家提高通讯调试的效率和准确性。LLCOMLLCOM是一个.NET开源的、功能强大的串口调试工具。支持Lua自动化处理、串口调试、串口监听、串口曲线、TCP测试、MQTT测试、编码转换、乱码恢复等功能。项目开源地址:htt......
  • 透视网络世界:计算机网络习题的深度解析与总结【后2章】
    ​第四章4-04试简单说明下列协议的作用:IP,ARP,RARP和ICMP。IP协议:实现网络互连。使参与互连的性能各异的网络从用户看起来好像是一个统一的网络。网际协议IP是TCP/IP体系中两个最主要的协议之一,与IP协议配套使用的还有四个协议。ARP协议:是解决同一个局域网上的主机或路由......
  • C#使用Python.NET执行Python脚本文件踩坑总结
    在VS,Nuget包管理器搜索“Python.NET”,安装pythonnet包,如下图:C#使用Python.NET执行Python脚本文件,C#代码如下:1publicclassPythonExecuter2{3privatereadonlystring_pythonDllPath;4privatereadonlystring_workDir;56publicPythonExecute......
  • 微信小程序开发总结
    业务需要,最近又搞起了微信小程序,之前从来没有参与过小程序的开发,对于开发中的流程也是知之甚少,正好学习一下,开搞...前提:使用企业注册小程序微信认证小程序备案 [本地开发]1.获取appid和secret管理>开发管理获取即可,需要管理员扫码确认这里获取到的appid在......
  • 【AIGC】ChatGPT 记忆功能揭秘:使用与管理的全方位指南
    博客主页:[小ᶻ☡꙳ᵃⁱᵍᶜ꙳]本文专栏:AIGC|ChatGPT文章目录......
  • 总结24个Python接单赚钱平台与详细教程,兼职月入5000+
    如果说当下什么编程语言最靠谱或者比较适合搞副业?答案肯定100%是:Python。python是所有语法中最简单易上手的语言,不需要特别的的英语词汇量,逻辑思维也不需要很差就能上手。而且学会了之后就能编写代码爬取各种数据,制作各种图表,提升工作效率。而且还能利用业余时间接点私活,......