Python: как преобразовать относительную координату в абсолютную в Tkinter

Я хочу реализовать скриншот на холсте, но 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 ответ

Вы можете использовать winfo_rootx и winfo_rooty, чтобы получить x,y верхнего левого угла виджета в экранных координатах. Добавьте это к координатам относительно окна, чтобы получить абсолютные координаты.

Другие вопросы по тегам