pygame鼠标绘制
- Pygame
- 鼠标绘制效果
- 代码
Pygame
Pygame是一个开源的Python库,专为电子游戏开发而设计。它建立在SDL(Simple DirectMedia Layer)的基础上,允许开发者使用Python这种高级语言来实时开发电子游戏,而无需被低级语言(如机器语言和汇编语言)所束缚。Pygame广泛应用于教育、娱乐、模拟等领域,并且支持多个平台,包括Windows、MacOS和Linux。
鼠标绘制效果
代码
import pygame
import sys# 初始化pygame
pygame.init()# 设置窗口大小
win_size = (800, 600)
screen = pygame.display.set_mode(win_size)# 设置颜色(RGB)
WHITE = (255, 255, 255) # 修正背景色为白色
RED = (255, 0, 0)# 变量来跟踪是否正在绘制
drawing = False
# 列表来存储线条的点
lines = []# 创建一个时钟对象来控制帧率
clock = pygame.time.Clock()# 游戏主循环
running = True
while running:# 处理事件for event in pygame.event.get():if event.type == pygame.QUIT:running = Falseelif event.type == pygame.MOUSEBUTTONDOWN:if event.button == 1: # 左键按下drawing = Truelines.append([(event.pos[0], event.pos[1])]) # 开始新线条elif event.type == pygame.MOUSEBUTTONUP:if event.button == 1: # 左键释放drawing = Falseelif event.type == pygame.MOUSEMOTION:if drawing:mouse_pos = event.pos# 追加当前点到当前线条的列表中lines[-1].append((mouse_pos[0], mouse_pos[1]))# 填充背景颜色screen.fill(WHITE)# 绘制所有线条for line in lines:for i in range(1, len(line)):pygame.draw.line(screen, RED, line[i - 1], line[i], 5)# 更新显示pygame.display.flip()# 设置帧率clock.tick(60)# 退出pygame
pygame.quit()
sys.exit()