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

1 投票
1 回答
1363 浏览
提问于 2025-04-18 06:24

我想在一个画布上实现截图功能,但 ImageGrab.grab() 这个函数是基于绝对坐标的,所以保存下来的图片和我想截取的内容不一样。我该怎么把画布上的相对坐标转换成绝对坐标呢?我试过用 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)

1 个回答

1

你可以使用 winfo_rootxwinfo_rooty 来获取小部件左上角在屏幕上的位置,具体是它的x和y坐标。然后,把这个坐标加上相对于窗口的坐标,就能得到绝对坐标了。

撰写回答