当前位置:   article > 正文

pygame库基础模块汇总_pygame模块详解

pygame模块详解

目录

1.安装

2.使用

3.display显示模块

4.draw模块

5.event模块

① event可以判断的事件

 ②键盘事件key

6.font模块 

7.time模块

8.基本框架


Pygame 是一个专门用来开发游戏的 Python 模块,主要为开发、设计 2D 电子游戏而生,它是一个免费、开源的第三方软件包,支持多种操作系统,具有良好的跨平台性(比如 Windows、Linux、Mac 等)

1.安装

(使用win+r打开运行,输入cmd),接着输入以下代码

pip3 install pygame

2.使用

在使用时,先引入pygame库,然后对其进行初始化

  1. import pygame #导入pygame库
  2. pygame.init() #pygame库初始化

 pygame.quit()   #取消初始化

3.display显示模块

  1. pygame.display.set_mode((width,height)) #创建一个窗口对象(宽高)
  2. pygame.display.set_caption("游戏") #更改窗口的标题为游戏
  3. pygame.display.get_surface() #获取当前显示的 Surface 对象。
  4. pygame.display.flip() #更新整个待显示的 Surface 对象到屏幕上。(一般来说第一次更新用flip,后续更新使用update)
  5. pygame.display.update() #更新部分软件界面显示。
  6. pygame.display.Info() #产生一个 VideoInfo 对象,包含了显示界面的相关信息。
  7. pygame.display.set_icon() #设置左上角的游戏图标,图标尺寸大小为 32*32。
  8. pygame.display.iconify() #将显示的主窗口即 Surface 对象最小化,或者隐藏。
  9. pygame.display.get_active() #当前显示界面显示在屏幕上时返回 True,如果窗口被隐藏和最小化则返回 False。
  10. pygame.display.get_driver() #获取pygame显示后端的名称
  11. pygame.display.toggle_fullscreen() #切换全屏显示和窗口显示
  12. pygame.display。set_palette() #为索引显示设置显示调色板

填充颜色:

import pygame
a = (0,0,0)  #使用rgb表定义黑色
screen = pygame.display.set_mode((600,800))

screen.fill(a)         #填充颜色

pygame.display.flip()  #刷新屏幕

4.draw模块

  1. pygame.draw.rect(surface, color, rect, width)   #绘制矩形
  2. pygame.draw.polygon(surface, color, points, width)   #绘制多边形
  3. pygame.draw.circle(surface, color, pos, radius, width=0)     #根据圆心和半径绘制圆形
  4. pygame.draw.ellipse(surface, color, Rect, width=0)     #根据限定矩形绘制一个椭圆形
  5. pygame.draw.line(surface, color, s_pos, e_pos, width=1)      #绘制线段
  6. pygame.draw.lines(surface, color, closed, pointlist, width=1)     #绘制多条连续的线段
  7. pygame.draw.aaline(surface, color, startpos, endpos, blend=1)     #绘制抗锯齿的线段
  8. pygame.draw.aalines(surface, color, closed, pointlist, blend=1)   #绘制多条连续的线段
  9. surface:游戏主窗口
  10. color:颜色
  11. rect:位置和尺寸大小
  12. width:线的宽度
  13. pos:圆心位置
  14. radius:半径
  15. s_pos:起始位置
  16. e_pos:终点位置
  17. pointlist:参数值列表

5.event模块

  1. pygame.event.get() #从队列中获取事件 在后续获取鼠标键盘操作时可以得到应用
  2. pygame.event.pump() #pygame内部自动处理事件
  3. pygame.event.poll() #从队列中获取"一个"事件
  4. pygame.event.wait() #等待并从队列中获取一个事件
  5. pygame.event.peek() #检测某类型事件是否在队列中
  6. pygame.event.clear()#从队列中删除所有的事件
  7. pygame.event.Event()#创建一个新的事件对象

① event可以判断的事件

  1. QUIT #用户按下窗口的关闭按钮
  2. ATIVEEVENT #Pygame被激活或者隐藏
  3. KEYDOWN #键盘按下
  4. KEYUP #键盘放开
  5. MOUSEMOTION #鼠标移动
  6. MOUSEBUTTONDOWN #鼠标按下
  7. MOUSEBUTTONUP #鼠标放开
  8. JOYAXISMOTION #游戏手柄(Joystick or pad) 移动
  9. JOYBALLMOTION #游戏球(Joy ball) 移动
  10. JOYHATMOTION #游戏手柄(Joystick) 移动
  11. JOYBUTTONDOWN #游戏手柄按下
  12. JOYBUTTONUP #游戏手柄放开
  13. VIDEORESIZE #Pygame窗口缩放
  14. VIDEOEXPOSE #Pygame窗口部分公开

 ②键盘事件keyK_BACKSPACE    退格键

1 K_TAB       制表键

K_CLEAR       清除键

K_RETURN   回车键

K_PAUSE       暂停键

K_ESCAPE   退出键

K_SPACE       空格键

K_0...K_9   0...9

K_a...Kz   a...z

K_DELETE   删除键

K_KP0..K_KP9  

0(小键盘)...9(小键盘)

K_F1..K_F15 F1...F15

K_UP       向上

K_DOWN       向下

6.font模块 

  1. pygame.font.SysFont() #从系统字体库创建一个Font对象
  2. pygame.font.Font() #从一个字体文件创建一个Font对象
  3. pygame.font.init() #初始化字体模块
  4. pygame.font.quit() #还原字体模块
  5. pygame.font.get_fonts() #获取所有可使用的字体

 font模块主要应用在字体的创建上。

 pygame.font.SysFont("方正粗黑宋简体", size)  #字体字号
 font.render(text, True, color)              #文本 光滑 颜色

7.time模块

  1. pygame.time.get_ticks() #以毫秒为单位获取时间
  2. pygame.time.wait() #暂停
  3. pygame.time.set_timer() #创建一个定时器,即每隔一段时间,去执行一些动作
  4. pygame.time.Clock() #创建一个时钟对象

8.基本框架

对于pygame库要现有一个基本的主框架,然后在主框架中逐步填入每一条应用代码,测试每一段pygame的相关操作能够运行。

  1. import pygame #导入pygame库
  2. import sys #退出所使用的sys库
  3. pygame.init() #初始化pygame
  4. pygame.display.set_mode((800,600)) #创建一个宽度为八百、高度为六百的窗口
  5. pygame.display.set_caption("无聊.jpg 的小游戏") #设置当前窗口标题
  6. pygame.display.flip() #刷新屏幕
  7. while True: #设置游戏的主循环,保证页面不闪退,并且可以使用鼠标关闭
  8. for envent in pygame.event.get(): #监听用户事件
  9. if envent.type == pygame.QUIT: # 判断用户是否点击了关闭按钮
  10. pygame.quit() #卸载pygame所有程序
  11. sys.exit() #用户退出

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/98366
推荐阅读
相关标签
  

闽ICP备14008679号