python tkinter 鼠標多点连线
时间: 2023-07-23 12:15:14 浏览: 44
要在 Python Tkinter 中实现鼠标多点连线,你可以使用 Canvas 组件和鼠标事件来实现。下面是一个简单的示例代码:
```python
import tkinter as tk
def on_mouse_click(event):
x, y = event.x, event.y
points.append((x, y))
canvas.create_oval(x-2, y-2, x+2, y+2, fill='black') # 在点击位置画一个小圆点
if len(points) > 1:
# 连线
p1 = points[-2]
p2 = points[-1]
canvas.create_line(p1[0], p1[1], p2[0], p2[1])
points = []
root = tk.Tk()
canvas = tk.Canvas(root, width=400, height=400)
canvas.pack()
canvas.bind('<Button-1>', on_mouse_click) # 绑定鼠标左键点击事件
root.mainloop()
```
这个示例代码创建了一个 Tkinter 窗口,并在窗口上创建了一个 Canvas 组件。当用户点击鼠标左键时,会触发 `on_mouse_click` 函数,该函数会在点击位置画一个小圆点,并将点击的坐标添加到 `points` 列表中。如果 `points` 列表中有至少两个点,它会将最近的两个点连接起来。
你可以运行这段代码,然后在窗口中点击鼠标左键来绘制多个点,并自动连线它们。