pygame教程2

python-pygame实现画板 import pygame from pygame.locals import * #这句可以借用事件类型的名称 pygame.init() screen=pygame.display.set_mode((800,600)) # 设置画板的颜色 screen.fill((255,255,255)) # 工具栏 up=pygame.image.load('up.png') scree... 阅读详情

响应键盘上的事件

import pygame#导入pygame。
import sys#导入sys
from pygame.locals import *#导入pygame所有的常量,方便以后使用。
pygame.init()#初始化pygame。
screen = pygame.display.set_mode((800,600))#设置窗口大小,此时已经创建窗口。
pygame.display.set_caption("Hello")#设置标题为Hello。
while True:
	for event in pygame.event.get():#pygame.event.get()可以获得事件。
		keyslist = pygame.key.get_pressed() # 获取按键元组信息
	    if event.type == QUIT:
	    #接收到退出事件后退出程序(QUIT是退出事件)。
	    	pygame.quit() #上一篇文章忘加了,不加无法关闭窗口。
	        sys.exit()
        if keyslist[pygame.K_RIGHT]: # K_RIGHT右键。如果按键按下,这个值为1
  			print("右")
	pygame.display.update()#刷新pygame,更新画面。或者用pygame.display.flip()。

插一句题外话,如果代码出错,pygame窗口无法关闭,可以使用系统自带的任务管理器(windows系统)进行强制关闭,快捷键为Ctrl+Shift+Esc。

让画面动起来

了解x轴和y轴

首先我们需要了解x轴和y轴。
在这里插入图片描述
x轴就是那条横着的轴,y轴就是那条竖着的轴。x轴和y轴相交处的点坐标为(0,0)。在平面上,x和y坐标就可以表示一个位置。

画圆形

可以用pygame.draw.circle()。包括五个参数:(1)画圆的表面,就是画在哪个窗口上(2)用什么颜色来画,如用红色[255,0,0]。(3)在什么位置画,[top,left]。(4)直径。(5)线宽,其中0表示完成填充。

圆形动起来

import pygame#导入pygame。
import sys#导入sys
from pygame.locals import *#导入pygame所有的常量,方便以后使用。
    
pygame.init()#初始化pygame。
screen = pygame.display.set_mode((800,600))#设置窗口大小,此时已经创建窗口。
pygame.display.set_caption("Hello")#设置标题为Hello。
a = False #用来确定圆形什么时候转向用的。
circle_x = 60 #圆形的x轴坐标变量
fps = 30 #动画为30帧
fcclock = pygame.time.Clock()#控制帧速率
while True:
    screen.fill([255, 255, 255])#设置窗口背景颜色
    pygame.draw.circle(screen, [255, 0, 0], [circle_x, 240], 30, 0)
    for event in pygame.event.get():#pygame.event.get()可以获得事件。
        keyslist = pygame.key.get_pressed() # 获取按键元组信息
        if event.type == QUIT:#这个程序不关闭是不会停止的
            #接收到退出事件后退出程序(QUIT是退出事件)。
            pygame.quit()
            sys.exit()
    if a == False:
        if circle_x <= 200:
            circle_x += 5
            pygame.draw.circle(screen, [255, 0, 0], [circle_x, 240], 30, 0)
        else:
            a = True
    else:
        if circle_x >= 60:
            circle_x -= 5
            pygame.draw.circle(screen, [255, 0, 0], [circle_x, 240], 30, 0)
        else:
            a = False
    
    pygame.display.update()#刷新pygame,更新画面。或者用pygame.display.flip()。
    fcclock.tick(fps)#设置动画的帧,就是1秒内移动几次。
Pygame学习笔记8:Block Breaker游戏 这次来制作一个Block Breaker游戏,即 在这次制作中,上一章制作的MyLibrary.py有一些改动和添加,完整的新代码如下: import random import sys import math import time import pygame from pygame.locals import * # 类中的X、Y、position用于设置精灵的位置 class MySprite(pygame.sprite.Sprite): def __init__(self): 阅读详情

相关推荐

pygame系列教程——1.2加载及显示图片

Python之pygame系列教程(二)一、二、pygame版Hello,World! 在上一节中,我们了解了pygame的安装及体验了一下最基本的pygame程序。但是,创建窗口是制作图形化游戏的第一步。接下来,让我们来做一个小demo。 一、 我们默认你已经安装pycharm,且配置好基于python3.x的开发环境(如果还未配置,请参考我之前的教程)。打开pycharm的Terminal,输入 pip install pygame 这是最简单,最不易出错的一种方式,且不用区分操作系统的区别。安装完成

Deepcold的博客 1万+

记录:1.pygame退出--按Q键进行退出

3.感觉按了小写q是暂停?虽然不知道为什么,按了窗口的最小化后,重新打开,窗口里面又可以动,且可以大写Q退出。1.退出窗口时,必须将键盘变为大写模式,才可以进行退出窗口,负责依旧会让游戏仅仅是变得不动。2.如果是在小写模式下,按q,则会导致即使是此时变为大写模式,依旧无法关闭窗口。按了Q键之后,pygame创建的窗口,仅仅是其中的东西不动,而不是窗口关闭。

weixin_45314061的博客 3661

python pygame sdl2教程_Python之pygame学习(2)

pygame学习✕上次学会了初始化,这次来说下显示画面 初始化窗口或屏幕以进行显示'''pygame.display.set_mode 一共三个参数,依次为:分辨率,显示模式,颜色位数;返回窗口数据'''pygame.display.set_mode(resolution, flags=0, depth=0, display=0): return Surface这个函数创建一个显示画面,参数用...

weixin_35128544的博客 1134

【禁用pygame的关闭功能,使得进程永远启动】

在使用 Pygame 开发游戏或交互式应用程序时,禁用关闭窗口的功能可以通过设置 Pygame 的事件处理来实现。Pygame 通过监听事件来响应用户的输入和操作,其中包括关闭窗口的事件。要禁用关闭窗口功能,你可以捕获关闭窗口事件并阻止其默认行为。

weixin_45498884的博客 488

Pygame 教程(2):重要的概念及对象

Pygame 教程(2):重要的概念及对象

ZhouJinXuan24的博客 635

Pygame 2.0+ 视频播放救星:MoviePy 实战教程(附常见报错解决方案)

本文详细介绍了如何在Pygame 2.0+版本中使用MoviePy实现视频播放功能,解决了Pygame移除内置视频模块后的兼容性问题。通过实战教程和常见报错解决方案,帮助开发者快速掌握MoviePy的核心功能、安装配置、高级集成技巧及性能优化方法,适用于游戏开发、多媒体应用等场景。

weixin_29008691的博客 245

Python之问题详解(三):pygame 窗口无法正常关闭

解决pygame 窗口无法正常关闭

zhu_rui的博客 7392

手把手教你用ZYNQ PS端GPIO模拟SPI驱动OLED屏幕(附Vivado工程)

本文详细介绍了如何利用ZYNQ PS端的EMIO功能,通过GPIO模拟SPI协议驱动SSD1306 OLED屏幕。从Vivado工程配置、SPI协议软件实现到SSD1306驱动开发,提供了完整的解决方案和优化技巧,适合嵌入式开发者快速上手。

weixin_30776545的博客 130

python2安装pygame,Python 中的pygame安装与配置教程详解

安装软件环境及版本说明OS: Win10 x 64 专业版Python: 2.7IDE: PyCharm Community 20181. 安装python1)下载并安装pythonpython官网下载需要的版本,并安装(安装过程很简单,步骤略)https://www.python.org/downloads/windows/这里下载的是python2.72)配置环境变量如果安装python时,没...

weixin_42505462的博客 593

UE5.5 PCGFrameWork程序化内容生成实战指南

本文是UE5.5 PCGFrameWork程序化内容生成的实战指南。详细介绍了从点云采样、DynamicMesh几何生成到子图与蓝图扩展的核心工作流。通过实战案例演示如何利用该框架高效构建丰富的程序化场景,为技术美术、独立开发者及爱好者提供从入门到进阶的系统性指引。

tea88的博客 921

告别调参烦恼:用Simulink手把手实现自适应模糊PID温度控制(附模型下载)

本文详细介绍了如何使用Simulink实现自适应模糊PID温度控制,解决传统PID调参难题。通过模糊推理引擎动态调整PID参数,系统能自动适应不同工况,显著提升控制精度和响应速度。文章包含完整的建模步骤、参数优化技巧和工业应用扩展,并附赠可下载模型,帮助工程师快速掌握这一智能控制技术。

weixin_30872499的博客 153

pygame显示图片的方法_pygame系列教程——1.2加载及显示图片

前言在上一节中,我们了解了pygame的安装及并编写了一个pygame运行的最小系统。但是,我们的游戏除了窗口就什么都没有了,未免显得过于单调了,那么本节我们就来给我们的游戏添加一些图片吧。在讲添加图片之前,我们需要先来了解几个概念,以便于更好的理解本节的内容。pygame的坐标在游戏开发中,我们需要将物体显示到pygame的窗口中,那么他的位置需要怎么确定呢?在这里,就需要引入pygame的坐标...

weixin_36429702的博客 8226

YOLOv11 改进策略:引入 NWD 损失函数提高小目标检测精度

YOLO(You Only Look Once)是一种实时目标检测算法,能够有效地预测图像中多个物体的边界框和类别概率。其高效性使它成为自动驾驶、视频监控等领域的理想选择。NWD 是一种基于 Wasserstein 距离的损失函数,其通过归一化处理,更好地评估预测框和真实框之间的几何偏差。这种方法不仅仅关注重叠区域,而且考虑中心点和尺度信息,提高了对小目标的敏感度。

走向CTO的路上... 2003

python3.8.2安装pygame教程_Python3.8安装Pygame教程步骤详解

注:因为最近想用一下Python做一些简单小游戏的开发作为项目练手之用,而Pygame模块里面提供了大量的有用的方法和属性。今天我们就在之前安装过PyCharm的基础上,安装Pygame,下面是安装的步骤,希望能够帮到大家。第一步 安装Python和pip如果已安装,使用python --version 查看安装的Python版本使用pip --version查看安装的pip版本注:如果是没有安装...

weixin_35851240的博客 935

药物对接仿真软件:HADDOCK_(16).实践项目:抗体-抗原对接案例

定义分子结构文件。

kkchenjj的博客 580

28_Spring AI 干货笔记之 OpenAI 聊天功能

本文详细介绍了在Spring AI框架中集成OpenAI聊天模型的方法。内容涵盖API密钥配置、通过starter依赖启用自动配置、连接与模型参数的详细设置,并重点说明了运行时选项的动态覆盖机制。文章还深入讲解了多模态处理(图像与音频)、结构化输出、函数调用等高级功能,提供了示例控制器和手动配置指南,并讨论了与OpenAI兼容服务器的适配与推理模型思维链的获取。

在科技的浪潮中,我们寻找着创新的火种,在代码的海洋里,我们编织着智慧的网。腾飞开源,就是这样一个由技术精英汇聚而成的博客平台,我们致力于分享在Java、Python、IoT和人工智能等领域的最新研究成果和实战经验。 在腾飞开源的博客上,你会看到紧跟技术前 1657

Pygame教程07:键盘常量+键盘事件的2种捕捉方式

2.2.pygame.key.get_pressed() 方法:这个方法返回一个元组,表示当前所有键盘按键的状态(按下或未按下)。键盘事件会涉及到大量的按键操作,比如游戏中的上下左右,或者人物的前进、后退等操作,这些都需要键盘来配合实现。3.键盘事件的示例用法:创建了一个游戏窗口,并在窗口中监听了键盘事件,会在窗口显示你所按的键。注意一个小细节:当按字母的时候,输入法要切换成英文状态,不然无法显示所按的字母键。------------★Pygame系列教程★------------

我的Python教程 5479

基于Flink的流式数据降维实现方案

理解为何实时场景需要降维(解决维度灾难)掌握Flink流处理与降维算法的结合方式学会用Flink实现一个可落地的流式降维系统覆盖内容包括:Flink流处理基础、降维算法选择(侧重在线算法)、Flink与降维的集成方案、实战代码示例,以及工业级场景的应用经验。本文从“为什么需要流式降维”出发,用“快递分拣”的生活案例引出核心概念;接着拆解Flink流处理、数据降维的底层逻辑;然后重点讲解“在线PCA”这一适合流式场景的降维算法,并用Flink实现一个完整的流式降维管道;

AI 领航者的博客 567

Pygame安装方法(Windows10, Python-3.7.2)

Pygame安装方法(Windows10, Python-3.7.2)

luan222869的博客 4670

π0.5部署实战(一) ------ 在Thor上使用NVFP4量化

此篇文章是pi05模型在thor上部署系列文章的第一篇.主要介绍如何对pi05 2.6B LLM(Gemma)使用nvfp4进行量化.所有操作使用开源工具可以先参考进行环境的准备和安装,在上完成以下操作.

happyAnger6的专栏 403

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Python pygame-ce(GUI编程)模块最完整教程(2/8)

get_mods方法获得的结果类似于event.mods,但是KEYDOWN或KEYUP只会在刚按下和刚松开按键时触发,而get_mods方法获得的是持续按下不松开的按键内容。Surface是渲染的文本表面,Rect是文本的大小,位于文字的原点。矩形对象的大小是表面的大小,位置(x, y)是文本原点的位置(也就是(0, 字体上升高度))。当用户按下某个按键时,会先打印一次"KEYDOWN",然后等待1000ms,再以200ms的时间间隔触发事件,打印多次"KEYDOWN",如果不能理解可以运行代码试一下。

pythonzzy的博客 7944

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

怎么显示全部背景图片_pygame系列教程——1.2加载及显示图片

前言在上一节中,我们了解了pygame的安装及并编写了一个pygame运行的最小系统。但是,我们的游戏除了窗口就什么都没有了,未免显得过于单调了,那么本节我们就来给我们的游戏添加一些图片吧。在讲添加图片之前,我们需要先来了解几个概念,以便于更好的理解本节的内容。pygame的坐标在游戏开发中,我们需要将物体显示到pygame的窗口中,那么他的位置需要怎么确定呢?在这里,就需要引入pygame的坐标...

weixin_30421043的博客 2496

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[pygame] 用pygame_sdl2替代pygame

pygame_sdl2安装

代码见:github/THZrry/demos_in_csdn 5455

大型Python+Pygame游戏教程合集:海岛世界:1.2海岛渲染+生成

由于要生成不同等级的岛屿,所以要再写一个文件,名为"island.py"还记得第一课的代码中,定义了一个"创建海岛地图二维列表"吗?

I_am_xiaojiang的博客 631

Python菜鸟快乐游戏编程_pygame(3)

Python菜鸟快乐游戏编程_pygame(博主录制,2K分辨率,超高清) https://study.163.com/course/courseMain.htm?courseId=1006188025&amp;share=2&amp;shareId=400000000398149         Python入门基础(2K分辨率超清,免费,博主录制) https://stud...

weixin_33862514的博客 230
上一篇: pygame教程1
下一篇: pygame教程3
cpkiteman
博客等级 码龄5年 9粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值