我一直在尝试创建一个更像按钮的移动椭圆形。到目前为止,我不打算在单击按钮时执行任何功能,因此我创建了传递功能。方案如下:tkinter窗口中的框架在指定位置被洋红色画布覆盖,并带有圆圈(黄色)。这个圆圈实际上是一个按钮,按下该按钮会打开一个弹出菜单,其中显示一些信息(现在不是必需的)。我设法创建了圆圈,但努力将按钮合并到椭圆形中。按钮和圆圈必须在一起,因为这对应该每3秒在画布框架中移动一次(声音像GPS点,但该点是按钮)。但是,当我尝试创建按钮时,画布消失了,并且框架根据按钮的宽度调整了大小。请帮助我确定错误和相应的正确代码:enter code herefrom tkinter import *import randomimport timedef nothing(): passmain = Tk()frame_1 = Frame(main)frame_1.grid(row=0, column=0)main_canvas = Canvas(frame_1, width=200, height=200, bg='magenta')oval = main_canvas.create_oval(20, 20, 40, 40, outline='black', fill='yellow')main_canvas.pack()frame_2 = Frame(main)frame_2.grid(row=0, column=1)'''button2 = Button(main_canvas, text="Q", command=nothing, anchor=W)button2.configure(width=3, activebackground="#33B5E5", relief=FLAT)button2_window = main_canvas.create_window(10, 10, anchor=NW, window=button2)button2.pack(side=TOP)'''label_f2_1 = Label(frame_2, text="")label_f2_1.pack()label_f2_2 = Label(frame_2, text="")label_f2_2.pack()x_current, y_current = 30, 30for loops in range(86400): x_new = random.randint(10, 190) y_new = random.randint(10, 190) main_canvas.move(oval, x_new-x_current, y_new-y_current) x_current, y_current = x_new, y_new main_canvas.update() time.sleep(1) now = str(time.ctime()) label_f2_2.configure(text=now[10:]) label_f2_1.configure(text=now[0:10])# print(time.localtime())main.mainloop()使用在Python 3.7解释器上运行的PyEdu。
添加回答
举报
0/150
提交
取消