gpt4 book ai didi

python - PysimpleGUI - 简单的动画

转载 作者:太空宇宙 更新时间:2023-11-03 21:22:36 26 4
gpt4 key购买 nike

感谢您阅读本文。

我正在制作一个简单的动画,该动画基于 PysimpleGUI 食谱中的两个示例之一。当然,附加的代码并没有做任何事情。我查看了许多示例,试图找出如何更新 Canvas ,但没有成功。

我的第一次尝试是基于正弦波图示例。我有一个无限的 while 循环和一个显示函数。图形区域上的显示显示了循环的第一次迭代,但此后不再更新。

显示功能包含:

graph.DrawCircle((i,j)5line_color='black'

第二个相关问题,我应该使用 Canvas 还是图形方法(如正弦波图示例),还是不重要?

我不想用太多的代码让读者不知所措。如果我能让以下代码工作,那么我可能有很好的机会获得真正的代码。

import PySimpleGUI as sg
import time

layout = [
[sg.Canvas(size=(100, 100), background_color='red', key= 'canvas')],
[sg.T('Change circle color to:'), sg.Button('Red'), sg.Button('Blue')]
]

window = sg.Window('Canvas test')
window.Layout(layout)
window.Finalize()

canvas = window.FindElement('canvas')
cir = canvas.TKCanvas.create_oval(50, 50, 100, 100)

while True:
event, values = window.Read()
'''
if event is None:
break
if event == 'Blue':
canvas.TKCanvas.itemconfig(cir, fill="Blue")
elif event == 'Red':
canvas.TKCanvas.itemconfig(cir, fill="Red")

'''

# this is the part that I need to sort out

for i in range(10):
if i % 2 == 0:
canvas.TKCanvas.itemconfig(cir, fill="Blue")

else:
canvas.TKCanvas.itemconfig(cir, fill="Red")

time.sleep(1)

最佳答案

我找到了答案,那就是 window.Read(timeout = 0)。

关于python - PysimpleGUI - 简单的动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54121678/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com