以下是部分代码预览:
"""游戏模版框架_鼠标指针移动圆圈盖图章.py
"""
__author__ = "李兴球"
__date__ = "2019年1月"
__company__ = "风火轮编程"
import pygame
# 定义颜色常量
BLACK = (0, 0, 0)
WHITE = (255, 255, 255)
GREEN = (0, 255, 0)
RED = (255, 0, 0)
CYAN = (0, 255, 255)
def produce_stamp():
surface = pygame.Surface((50,50))
surface.set_colorkey((0,0,0))
# 在这个面上画一个圆形
pygame.draw.circle(surface, CYAN, (25,25),25)
return surface
# 启动派gei引擎
pygame.init()
# 设置屏幕对象
size = [700, 500]
screen = pygame.display.set_mode(size)
pygame.display.set_caption("游戏模版框架_鼠标指针移动圆圈盖图章_作者:李兴球")
circle = produce_stamp()
stamps = {} # 记录图层和它的渲染坐标
# 退出while循环的利器,当单击窗口关闭按钮时的事件发生时它的值会为True
done = False
# 这是用来控制帧率的时钟变量
clock = pygame.time.Clock()
# 隐藏鼠标指针
pygame.mouse.set_visible(0)
# -------- Main Program Loop -----------
while not done:
# 迭代所发生的每件事
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
# 获取鼠标指针的坐标
pos = pygame.mouse.get_pos()
x = pos[0]
y = pos[1]
click = pygame.mouse.get_pressed()
# 如果单击左键,则"盖一个图章",放入字典,键为surface,值为中心点坐标
if click[0] : stamps[produce_stamp()] = x-25,y-25
# 清屏幕为黑色,重画所有circle
screen.fill(BLACK)
screen.blit(circle, (x-25, y-25))
for stamp in stamps:
screen.blit(stamp,(stamps[stamp]))
# 显示所画
pygame.display.flip()
# 设置帧率为60
clock.tick(60)
# 安全退出到IDLE
pygame.quit()
如需要查看完整代码,请
需要浏览更多吗?
成为会员后,登陆才能继续浏览!联系微信scratch8即可办理会员。
(会员专属:能浏览所有文章,下载所有带链接的Python资源。)

