python tkinter中实时显示鼠标的坐标
时间: 2023-04-03 21:04:55 浏览: 312
可以使用Tkinter中的Canvas组件和bind方法来实现实时显示鼠标的坐标。具体实现方法可以参考以下代码:
```python
import tkinter as tk
def motion(event):
x, y = event.x, event.y
label.config(text="鼠标坐标:({}, {})".format(x, y))
root = tk.Tk()
root.geometry("300x200")
canvas = tk.Canvas(root, bg="white")
canvas.pack(fill=tk.BOTH, expand=True)
label = tk.Label(root, text="鼠标坐标:(0, 0)")
label.pack(side=tk.BOTTOM)
canvas.bind("<Motion>", motion)
root.mainloop()
```
在这个程序中,我们创建了一个Canvas组件和一个Label组件。Canvas组件用于显示图形,Label组件用于显示鼠标坐标。我们通过bind方法将鼠标移动事件与motion函数绑定,当鼠标移动时,motion函数会更新Label组件的文本内容,从而实现实时显示鼠标的坐标。
相关问题
用python中的tkinter写一个实时获取鼠标坐标的代码
可以使用Tkinter库中的Canvas组件来实现实时获取鼠标坐标的效果,以下是一个示例代码:
```python
import tkinter as tk
def motion(event):
x, y = event.x, event.y
print('鼠标位置:({},{})'.format(x, y))
root = tk.Tk()
canvas = tk.Canvas(root, width=500, height=500)
canvas.pack()
canvas.bind('<Motion>', motion)
root.mainloop()
```
代码中,我们创建了一个大小为500x500的Canvas组件,并将其绑定到鼠标移动事件。当鼠标移动时,会调用motion函数,获取鼠标的x、y坐标并输出到控制台。你可以根据自己的需求进行修改。
python tkinter canvas随鼠标划线
你可以使用Tkinter中的Canvas组件和Canvas的bind方法来实现随鼠标划线的功能。下面是一个简单的示例代码:
```python
from tkinter import *
def start(event):
global x, y
x, y = event.x, event.y
def draw(event):
global x, y
canvas.create_line(x, y, event.x, event.y, width=5)
x, y = event.x, event.y
root = Tk()
canvas = Canvas(root, width=400, height=400)
canvas.pack()
canvas.bind("<Button-1>", start)
canvas.bind("<B1-Motion>", draw)
root.mainloop()
```
这段代码中,我们首先定义了两个函数start和draw,分别用来记录鼠标按下的初始坐标和绘制线条。然后我们创建了一个Canvas对象,并将其绑定到鼠标左键按下和拖动事件上。在draw函数中,我们使用create_line方法在Canvas上绘制直线,起始点为(x,y),终止点为(event.x,event.y),并设置线宽为5。最后更新x和y的值,以便下次绘制时使用。运行程序后,你可以通过按下鼠标左键并拖动来随意绘制线条。
阅读全文