在python中单击左键时如何使对象出现在画布中?

时间:2017-10-18 16:56:37

标签: python tkinter tkinter-canvas

所以我想要的是在我的python工作的画布上得到一个椭圆形。 (这是一个照片编辑器项目)。 " C"指的是我在python中制作并塑造成tkinter程序的画布。如何制作以下代码以在我的程序的画布中弹出一个椭圆形?(另外如果您知道如何进行鼠标按下事件,请更改"< Button-1>"到适当的标签):

{{1}}

1 个答案:

答案 0 :(得分:0)

您只需要删除对pack的调用,然后让您的函数接受一个事件参数。最后,您可能希望使用bind而不是bind_all,除非您真的希望它绘制椭圆形,即使您点击其他小部件(如按钮或滚动条)也是如此。

import Tkinter as tk

def PaintBrushWorking(event):
    blueBlob = c.create_oval(20, 30, 40, 60, fill="blue")

root = tk.Tk()
c = tk.Canvas()
c.pack(fill="both", expand=True)

c.bind("<Button-1>", PaintBrushWorking)

root.mainloop()