如何在Tkinter Python中的点击事件上在画布上绘制点?

如何在Tkinter Python中的点击事件上在画布上绘制点?

考虑创建一个GUI应用程序的情况,以便当我们使用鼠标单击窗口时,它将存储坐标并绘制一个点。Tkinter提供了允许用户将键或按钮与函数绑定的事件。

为了在点击事件上绘制一个点,我们可以按照以下一般步骤进行操作——

  • 创建一个画布小部件并填充它以在窗口中显示。

  • 定义一个函数 draw_dot() ,该函数作为用户执行单击事件时的事件。

  • 创建一个全局变量,它计算画布中单击事件的次数。

  • 如果计数变为2,则在第一个和第二个坐标之间绘制一条线。

  • 将鼠标按钮与回调函数绑定,以完全控制该函数。

示例

# 导入所需的库
from tkinter import *
from tkinter import ttk

# 创建tkinter窗口或框架的实例
win = Tk()

# 设置窗口的大小
win.geometry("700x350")

# 定义函数以在两点之间画线
def draw_line(event):
   x1 = event.x
   y1 = event.y
   x2 = event.x
   y2 = event.y
   # 在给定的坐标中绘制椭圆
   canvas.create_oval(x1, y1, x2, y2, fill = "black", width = 20)

# 创建画布小部件
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

结果

运行上述代码以显示窗口。当您在画布内的任意位置单击时,它将在该点绘制一个点。

如何在Tkinter Python中的点击事件上在画布上绘制点?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册