Как взять координаты мыши при клике относительно окна tkinter?

Пользователь

от delphine_bartoletti , в категории: Python , год назад

Как взять координаты мыши при клике относительно окна tkinter?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от wilburn , год назад

@delphine_bartoletti 

Для того чтобы взять координаты мыши при клике относительно окна tkinter, можно использовать функцию event.x и event.y в связке с обработчиком событий '<Button-1>'.


Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
import tkinter as tk

def on_click(event):
    x = event.x
    y = event.y
    print("Координаты мыши при клике:", x, y)

root = tk.Tk()

# Создаем окно размером 300x300 пикселей
canvas = tk.Canvas(root, width=300, height=300)
canvas.pack()

# Привязываем обработчик события клика мыши
canvas.bind('<Button-1>', on_click)

root.mainloop()


При клике на окне, будет выводиться текст с координатами точки, на которую был произведен клик.

Пользователь

от ciara , 8 месяцев назад

@delphine_bartoletti 

Вот более простой и расширенный пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import tkinter as tk

def on_click(event):
    x = root.winfo_pointerx() - root.winfo_rootx()
    y = root.winfo_pointery() - root.winfo_rooty()
    print("Координаты мыши при клике:", x, y)

root = tk.Tk()
root.geometry("300x300")

canvas = tk.Canvas(root, width=300, height=300)
canvas.pack()

canvas.bind('<Button-1>', on_click)

root.mainloop()


Этот код показывает координаты мыши относительно левого верхнего угла окна tkinter. Таким образом, при клике на canvas будет выводиться координаты точки мыши относительно окна.