以下是我在特金特制作时钟的方法:from Tkinter import *
import simpy
SIM_TIME = 100
class Clock:
def __init__(self, canvas, x1, y1, x2, y2, tag):
self.x1 = x1
self.y1 = y1
self.x2 = x2
self.y2 = y2
self.canvas = canvas
self.train = canvas.create_rectangle(self.x1, self.y1, self.x2, self.y2, fill="#fff")
self.time = canvas.create_text(((self.x2 - self.x1)/2 + self.x1), ((self.y2 - self.y1)/2 + self.y1), text = "Time = "+str(tag)+"s")
self.canvas.update()
def tick(self, tag):
self.canvas.delete(self.time)
self.time = canvas.create_text(((self.x2 - self.x1)/2 + self.x1), ((self.y2 - self.y1)/2 + self.y1), text = "Time = "+str(tag)+"s")
self.canvas.update()
def create_clock(env):
clock = Clock(canvas, 500,225,700,265, env.now)
while True:
yield env.timeout(1)
clock.tick(env.now)
animation = Tk()
im = PhotoImage(file="image.gif")
canvas = Canvas(animation, width = 800, height = 310)
canvas.create_image(0,0, anchor=NW, image=im)
animation.title("Sim Title")
canvas.pack()
env = simpy.Environment()
env.process(create_clock(env))
env.run(until=SIM_TIME)