1

我想知道如何撤消 Python/Pygame 中的绘图步骤。基本上我已经让鼠标画线了,当我点击我的撤消矩形时,我希望屏幕恢复到原来的状态(在按下鼠标之前)。这是我的代码,但效果不佳。

copy=screen.copy()
if undoRect.collidepoint(mx,my) and mb[0]==1:
       screen.blit(copy,(0,0))
 if mb[0]==1 and omb[0]==1:
       draw.line(screen,color,(omx,omy),(mx,my),5)

知道我的意思的人可以给我一些关于如何制作撤消上一个绘图按钮的想法吗?

谢谢你。

附言。我对 pygame/python 还很陌生,所以请慢慢来。

4

1 回答 1

2

您只需要在用户与应用程序交互时保存帧。

例如,在我使用 opengl 编写的演示绘画应用程序中,我使用了一个最多包含 20 个元素的列表,并且当用户开始一个新操作时我正在更新它。

如果用户单击屏幕,则将当前帧保存到列表中。如果用户停止单击保存新框架。然后,当您需要返回时,您只需获取列表的最后一个元素并将其绘制到屏幕上。

于 2012-01-29T23:41:41.383 回答