使用 tkinter 在两次鼠标点击之间画一条线
tkinterpythongui-programming更新于 2025/12/18 5:00:17
考虑创建一个 GUI 应用程序的情况,当我们用鼠标按钮点击窗口时,它会存储坐标并在两个给定点之间创建一条线。 Tkinter 提供事件,允许用户将按键或按钮与函数绑定。
要在两点之间画一条线,我们可以遵循以下一般步骤,
创建一个画布小部件并将其打包以显示在窗口中。
定义一个函数 draw_line(),当用户执行点击事件时,该函数作为事件。
创建一个全局变量,用于计算画布中的点击次数。
如果计数变为 2,则在第一个和第二个坐标之间画一条线。
将鼠标按钮与回调函数绑定,以完全控制该函数。
示例
# 导入所需的库
from tkinter import *
from tkinter import ttk
# 创建 tkinter 框架或窗口的实例
win=Tk()
# 设置窗口的大小
win.geometry("700x350")
# 定义一个函数来绘制两点之间的线
def draw_line(event):
global click_num
global x1,y1
if click_num==0:
x1=event.x
y1=event.y
click_num=1
else:
x2=event.x
y2=event.y
# 在给定坐标处绘制线条
canvas.create_line(x1,y1,x2,y2, fill="green", width=10)
# 创建画布小部件
canvas=Canvas(win, width=700, height=350, background="white")
canvas.grid(row=0, column=0)
canvas.bind('<Button-1>', draw_line)
click_num=0
win.mainloop()
输出
运行上述代码以显示窗口。如果我们在画布小部件的任意位置单击两次,它将在画布上绘制一条线。

相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

