为了账号安全,请及时绑定邮箱和手机立即绑定

Tkinter:在Python 3的框架画布上的矩形按钮。

Tkinter:在Python 3的框架画布上的矩形按钮。

GCT1015 2021-04-08 09:19:33
我一直在尝试创建一个更像按钮的移动椭圆形。到目前为止,我不打算在单击按钮时执行任何功能,因此我创建了传递功能。方案如下: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。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 272 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号