문제

I found this question : Get screenshot on Windows with Python?

to take a screenshot of the full desktop:

import sys
from PyQt4.QtGui import QPixmap, QApplication
from datetime import datetime

date = datetime.now()
filename = date.strftime('%Y-%m-%d_%H-%M-%S.jpg')
app = QApplication(sys.argv)
QPixmap.grabWindow(QApplication.desktop().winId()).save(filename, 'jpg')

However, I would like to take a screenshot of an external window. I have the hwnd of the window I want to take the screenshot off using win32gui.

도움이 되었습니까?

해결책

According to the documentation for winId, the returned value is platform dependent.

So for Windows, it surely must (famous last words), return a hwnd and thus need no further conversion. If so, then try:

    QPixmap.grabWindow(hwnd).save(filename, 'jpg')

(PS: I have actually tested this now on WinXP, and it works okay for me).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top