Я пытаюсь создать функцию, которая будет снимать скриншоты именно с окна tkinter.
На данный момент это лучший метод, который я нашел на данный момент:
def save():
pyautogui.keyDown('alt')
pyautogui.keyDown('printscreen')
pyautogui.keyUp('printscreen')
pyautogui.keyUp('alt')
self.img = ImageGrab.grabclipboard()
self.img.save('paste.jpg', 'JPEG')
self.dataSend = Button(main, text = "Send", command = save).grid(column = 1, row = 13, sticky = W)
Причина, по которой я использую pyautogui.keyDown
и Up
для alt + screenshot
, потому что эта функция щелчка печати отображает только окно приложения.
Но иногда, когда я нажимаю кнопку Save
, появляется ошибка:
self.img.save('paste.jpg', 'JPEG')
AttributeError: 'NoneType' object has no attribute 'save'
Есть ли другие альтернативы этому?И есть более плавный способ скриншота окна tkinter при нажатии кнопки и сохранения файла jpg?