我试着模拟一个美国红绿灯,矩形上有3个圆圈,都画在布景上。模拟应该通过以下顺序每2秒更改显示的灯光来镜像“动画”:绿色>;黄色>;红色>;绿色,等等。
我能想到的唯一方法是使用canvas.move(),canvas.after(),canvas.update()模式移动一个填充的椭圆形对象,一次叠加一个未填充的圆。我已经掌握了以正确的速度和顺序移动一个圆的逻辑。问题是,我只是实例化了一个用“green”填充的圆,但是我不能用这个方法将它改为“yellow”或“red”。每2秒就要用不同的填充重新绘制一个新的位置,删除(“填充”),这看起来很傻,因为对于这样一个简单的程序来说,这是一件很重要的事情。
问题1:是否有方法可以使用某种方法或其他方法随意更改填充画布对象的fill
选项?
问题2:我是否错误地处理了这种情况?有没有更好的方法来模拟这个?
是的,您应该能够用^{} 更改画布的设置。
同样,使用^{} 更改画布上的项。这确实要求您保存项目的句柄或标记它们。
tkinterbook的示例:
相关问题 更多 >
编程相关推荐