如何用tkinter用鼠标绘制矩形的程序。当用户在画布上单击时,会在前一一个矩形的角和鼠标单击的位置之间绘制一个新的矩形。第一个矩形的左上角将位于位置(0, 0), 右下角将位于用户第一次单击鼠标的位置。第二个矩形将从用户的第一次鼠标单击延伸到第二次鼠标单击,依此类推。
时间: 2023-05-17 16:07:39 浏览: 58
python通过tkinter实现画图小程序
以下是使用tkinter绘制矩形的程序:
```python
import tkinter as tk
class RectangleDrawer:
def __init__(self, master):
self.master = master
self.canvas = tk.Canvas(master, width=500, height=500)
self.canvas.pack()
self.canvas.bind("<Button-1>", self.draw_rectangle)
self.rectangles = []
self.start_x, self.start_y = None, None
def draw_rectangle(self, event):
if self.start_x is None:
self.start_x, self.start_y = event.x, event.y
else:
end_x, end_y = event.x, event.y
self.rectangles.append(self.canvas.create_rectangle(self.start_x, self.start_y, end_x, end_y))
self.start_x, self.start_y = None, None
root = tk.Tk()
app = RectangleDrawer(root)
root.mainloop()
```
这个程序使用tkinter创建了一个画布,并绑定了鼠标单击事件。当用户单击鼠标时,程序会检查是否已经有起始点,如果没有,则将当前点作为起始点;如果已经有起始点,则使用起始点和当前点创建一个矩形,并将矩形添加到列表中。程序会一直等待用户单击鼠标,直到用户关闭窗口。
阅读全文