Python:如何在 Tkinter 中将相对坐标转换为绝对坐标

标签 python tkinter

我想在 Canvas 上实现截图,但是ImageGrab.grab()函数是基于绝对坐标的,所以它保存的图像不是我截取的图像。如何将 Canvas 的相对坐标转换为绝对坐标?我使用了 canvasx() 但它不起作用。

screen = (min(sbox[0],ebox[0]),min(sbox[1],ebox[1]),max(sbox[0],ebox[0]),max(sbox[1],ebox[1]))
img = ImageGrab.grab(screen)

最佳答案

您可以使用winfo_rootxwinfo_rooty获取屏幕坐标中小部件左上角的 x,y。将其添加到相对于窗口的坐标以获得绝对坐标。

关于Python:如何在 Tkinter 中将相对坐标转换为绝对坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23633035/

相关文章:

python - 显示数据存储中的图像

python - 尝试写入行时出现“FieldMissingError”

python - 是否可以选择编辑 Tkinter EntryBox 内的填充?

python - wordend 不考虑撇号

python - 如何使用 Python 3 将信息从 Tkinter 中的表单发送到 ScrolledText?

python - Tkinter 网格和小部件大小

python - 根据条件修改值

python - 将 Django 与 Apache、mod-wsgi 和 mod-wsgi_httpd 结合使用

Python OOP问题,一个类的值没有被另一个类的函数更新

Python tkinter : Sorting the contents of an OptionMenu widget