首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

PyGame:Python 游戏编程入门-1

您稍后也参加活动。在这种情况下,唯一处理的事件是pygame.QUIT,当用户单击窗口关闭按钮时发生。 第 20 行用纯色填充窗口。...这是您可以控制的窗口部分,而操作系统控制窗口边框和标题栏。 如果你现在运行这个程序,那么你会看到一个窗口短暂地弹出,然后在程序退出时立即消失。不要眨眼,否则您可能错过!...对于您的游戏,您将关注的事件类型是按键和窗口关闭。按键事件有事件类型KEYDOWN,关闭窗口事件有类型QUIT。不同的事件类型也可能具有与之关联的其他数据。...此事件仅在用户单击窗口关闭按钮时发生。用户还可以使用任何其他操作系统动作来关闭窗口。...当您将这些行添加到前面的代码并运行它时,您会看到一个带有空白或黑屏的窗口: 在您按下该键之前,该窗口不会消失Esc,或者QUIT通过关闭窗口来触发事件。

2K40

pygame系列 第一课 创建游戏窗口

那python可以做图形界面的游戏?偷偷告诉你,用pygame库就可以实现了。pygame是python中专门用来编写游戏的一个引擎库,通过使用它,就可以很快的实现编写图形化的游戏。...3.保持窗口显示 上面的窗口一闪就退出了,通过一个while循环一直保持,直到关闭窗口 代码: import pygame # 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法 pygame.init...== pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() pygame.quit() # 退出pygame 4.显示有颜色的窗口 代码: import...if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() screen.fill(red) #...遍历所有事件 if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() screen.fill(

2.1K20

这是我第一次使用代码创建出一个窗口【python 游戏实战 01】

import pygame pygame.init() 小媛:真的会有上一个人的残留信息? 小C:哈哈哈,当然不会,其实这个过程就像你玩游戏新建一个角色,总要初始化这个角色啥样吧?...小C:接下来我们就来创建这个游戏窗口吧,游戏窗口还需要输入一个宽高,否则 pygame 是不知道你要创建什么样子的窗口的。 小媛:程序就是这样,我懂,都要给予一些基础信息,否则搞不定的。...import pygame pygame.init() screen=pygame.display.set_mode((800,600)) 小媛:简简单单,我搞出来了,真香第一次使用代码创建窗口,真开心...小C:开心就好开心就好,但是这个窗口一闪而过是吧? 小媛:是的,一闪就过了我有点懵。 小C:没事,我们将这个窗口的信息给补全吧。 小媛:现在没有全? 小C:对的,你还有标题和图标没有加呢。...小C:是的,直接使用 set_icon 就可以将这个图片设置到窗口上了。 小媛:但是还是一闪而过。 小C:对的,我们下节课告诉你怎么解决这个问题。 小媛:了解。

59140

Pygame 第3课】 游戏中的事件

玩家的操作触发程序中的事件,常见的事件包括:关闭程序、按下键盘、移动鼠标、按下鼠标等等。今天我们挑其中一个来举例说明:“鼠标按下”事件(MOUSEBUTTONDOWN)。...还记得上次课中的这段代码: for event in pygame.event.get(): if event.type == pygame.QUIT: #接收到退出事件后退出程序...pygame.event.get()接收所有程序中的事件。当判断这个事件是一个关闭程序(QUIT)的事件时,就将程序关闭。 现在,我们要增加一个事件响应:当玩家点击了鼠标之后,就换一张背景图。...在for循环中新增一段if语句: if event.type == pygame.MOUSEBUTTONDOWN: #接收到鼠标按下事件后更换背景 background = pygame.image.load...运行程序,在窗口上点击鼠标,背景变成bg2.jpg的图案。为了显示效果,最好使用和bg.jpg长宽一样的图片。 ? 不过点击了一次之后,背景就不会再变了。

1.3K70

将打飞机游戏打包成 exe

发现很多朋友在写了 pygame 的打飞机游戏之后,都很想打包成 exe 文件分享给别人玩。但是在打包的过程中,可能遇到一些问题。今天我就来整理一下 pygame 打包 exe 的一些注意事项。...2.点击打包好的 exe 一闪而过 这通常是发生了错误,程序关闭。要想知道错误原因,可在命令行下,到文件所在目录执行 mygame.exe,则可以看到报错信息。...而正常的打包程序,执行完之后也立即关闭窗口。如果想让窗口停留,可以在程序末尾加上一句 raw_input("press any key to exit...") 让程序阻塞在等待输入的状态。...额外的注意事项: 1.如果打包后执行 exe 出错,问题记录在 mygame.exe.log 中。...后来在网上搜索了下,结论是:关闭xx管家/xx安全卫士之类的软件,就可以成功打包了。 关于 cx_freeze 和 py2exe 的详细配置,我会在论坛里转载两篇相关文章供参考。

1.4K60

Easy Games With Python and Pygame(一)- Pygame Quickstart

是通过图形和文本绘制一个单独的窗口,在窗口中显示内容,可以对窗口大小颜色自定义,可以在窗口中绘制任何图形,通过调用pygame中的事件event,既键盘和鼠标的输入来对窗口内容进行操作 使用 Pygame...绘制图形需要以下几步 导入Pygame模块 Pygame初始化 定义窗口显示的内容 定义窗口 创建并将内容填充到窗口中 刷新显示 创建pygame_quickstart.py脚本 import pygame...() 运行这段程序,控制台没有任何报错,但是也没有图形界面显示 这是因为代码执行结束后窗口快速关闭,所以可以通过加入while循环来保持程序运行一段时间,并且通过监听键盘事件来终止程序 import...类中看到 五、Rect 类 在pygame下的draw模块是用来绘制图形的,比如矩形、圆形、椭圆、线条等 所有这些方法都会返回Rect类,并且这些方法都需要输入一个Surface对象作为参数还有其他一些参数比如位置...# 设置窗口标题 pygame.display.set_caption('线条的绘制') bg_color = (120, 120, 255) while True: # 设置关闭窗口条件

1.2K10

python小游戏设计入门5-捡金币游戏(下)

子模块,固定用法 pygame.init() # 初始化pygame # 游戏肯定是在一个窗口中,那我们先来创建一个窗口 size = width, height = 600, 480 # 设置窗口大小...screen = pygame.display.set_mode(size) # 显示窗口 pygame.display.set_caption("捡金币游戏") #设置游戏窗口标题 # 创建玩家角色类...("anna.ttf",24) # 自己下载的字体,可以显示中文 showstartscreen() while True: # 死循环确保窗口一直显示 for event in pygame.event.get...(): # 遍历所有事件 if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() elif event.type ==...() # 更新 总结: 捡金币游戏到这里就结束了,当然还有很多可以完善的地方,比如有很多重复的显示文本的代码,除了内容不一样,其它都一样;可以新建一个游戏类,更方便管理代码,还有游戏音效,再来一轮,限时功能

1.6K20

Python游戏编程(Pygame)

pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() pygame.quit() # 退出pygame 执行结果: 制作一个跳跃的小球游戏 创建一个游戏窗口...运行第一步的代码后会出现一个一闪而过的黑色窗口,这是因为程序执行完成后,自动关闭。如果想要让窗口一直显示,需要使用while True让程序一直执行,此外,还需要设置关闭按钮。...(): # 遍历所有事件 if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() pygame.quit...这里的事件处理方式与GUI类似,如event.type等于pygame.QUIT表示检测到关闭pygame窗口事件,pygame.KEYDOWN表示键盘按下事件,pygame.MOUSEBUTTONDOWN...== pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() ballrect = ballrect.move(speed

2.5K20

pygame-游戏开发学习笔记(三)–event事件捕捉

上一个程序,一直运行下去,直到你关闭窗口而产生了一个QUIT事件,Pygame接受用户的各种操作(比如按键盘,移动鼠标等)产生事件。...事件随时可能发生,而且量也可能很大,Pygame的做法是把一系列的事件存放一个队列里,逐个的处理。...下表是一个 常用事件集: 事件 产生途径 参数 QUIT 用户按下关闭按钮 none ATIVEEVENT Pygame被激活或者隐藏 gain, state KEYDOWN 键盘被按下 unicode...窗口缩放 size, w, h VIDEOEXPOSE Pygame窗口部分公开(expose)?...pos – 就是位置了…… rel – 代表了现在距离上次产生鼠标事件时的距离 和MOUSEMOTION类似的,我们还有MOUSEBUTTONDOWN和MOUSEBUTTONUP两个事件,看名字就明白是什么意思了

1.5K10

Python游戏工具包---Pygame最常用的15个模块详解(附pdf版本)

当用于希望关闭程序时,pygame.QUIT 事件会被发送;当显示界面获得和失去焦点时,窗口会得到 pygame.ACTIVEEVENT 事件;如果显示界面设置了 pygame.RESIZABLE 标志...一些显示环境拥有自动拉伸所有窗口的选项。当该选项被启动时,自动拉伸扭曲 Pygame 窗口的外观。...quit() -> None 这个函数会关闭整个 display 模块。这将意味着任何一个活跃的显示界面都将被关闭。当主程序退出时,该函数也会被自动调用。...当您开始播放Sound对象时,它会在声音继续播放时立即返回。单个Sound对象也可以自动播放多次。 混音器还有一个特殊流通道用于音乐播放,可通过 pygame.mixer.music 模块访问。...如果正在播放,这将立即影响声音。它也影响此声音的任何未来播放。参数是从0.0到1.0的值。

14.9K55

用 Python 制作飞机大战小游戏

/imgs/bg_img.png") # 相对路径 print(bg_img) # 开始游戏的主循环 while True: # 为了防止游戏窗口启动立马关闭...# 为了防止游戏窗口启动立马关闭,在其中增加一个游戏循环(无限循环), for event in pygame.event.get(): #...plane = Plane(screen) # 开始游戏的主循环 while True: # 为了防止游戏窗口启动立马关闭,在其中增加一个游戏循环(无限循环...def check_events(): # 为了防止游戏窗口启动立马关闭,在其中增加一个游戏循环(无限循环), for event in pygame.event.get():...现在将check_events函数改写,通过检测按下键位,来对小飞机进行移动 def check_events(plane): # 为了防止游戏窗口启动立马关闭,在其中增加一个游戏循环(无限循环

4.2K20

Python 升级之路( Lv12 ) Pygame游戏开发基础

初始化 pygame.init() # 生成主屏幕(“双缓冲”窗口) """ set_mode 函数:返回一个 Surface 对象,代表了在桌面上出现的那个窗口 在 3 个参数中,第 1 个参数为元组...() 注意: set_mode 函数:返回一个 Surface 对象,代表了在桌面上出现的那个窗口 在 3 个参数中,第 1 个参数为元组,表示屏幕的大小; 第 2 个标志位,具体含义如表 1-...效果展示 常用模块介绍 事件操作 Pygame 接受用户的各种操作(比如按键盘,移动鼠标等). 这些操作产生对应的事件,例如按键盘事件,移动鼠标事件....中常用的事件 事件参数产生途径QUITnone用户按下关闭按钮ACTIVEEVENTgain, state激活或者隐藏Pygame KEYDOWNunicode, key, mod按下键KEYUPkey...,如果 mod&KMOD_CTRL 是真,表示用户同时按下了 Ctrl 键,类似的还有 KMODE_SHIFT 和 KMODE_ALT。

1.4K10

游戏角色开始动起来了,真帅!【python 游戏实战 03】

小C:当然是左右横跳了,最近不是很火? 小媛:昂,那你教我,我去试试。 小C:其实让游戏元素动起来其实也是超级简单的。那你知道游戏中的元素一般是怎么来的? 小媛:你是指游戏角色游戏人物?...我们需要在游戏中添加元素就是在窗口屏幕中添加图片。 小媛:嗯,那怎么添加? 小C:添加图片你必须先加载。 小媛:就像我在玩一些游戏的时候,显示正在加载资源,是这个意思? 小C:昂,差不多吧。...那用代码怎么编写图片加载你知道? 小媛:你都没教我怎么知道。 小C:我教了呀,你还记得你的背景图是怎么加上去的?...hero=pygame.image.load(r'E:\2dsrc\src\img\hero1.png') 小C:是的,接下来我们将这个图片在主循环中绘制到屏幕上,你知道绘制是使用什么方法?...() screen.blit(hero,(250,680)) screen.blit(bg,(0,0)) 小C:是的,这样就绘制出了我们的角色,但是你背景忘记画了,还有每次循环都要更新,

58630
领券