'QPixmap' 没有属性 'grabWindow' [英] 'QPixmap' has no attribute 'grabWindow'
本文介绍了'QPixmap' 没有属性 'grabWindow'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试将我的代码从 PyQt4 转换为 PyQt5,但出现错误.
I am trying convert my code from PyQt4 to PyQt5 but I am getting errors.
import sys
from PyQt5.QtGui import QPixmap
from PyQt5.QtWidgets import 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')
Traceback (most recent call last):
File "C:\Python34\Projects\name.py", line 9, in <module>
QPixmap.grabWindow(QApplication.desktop().winId()).save(filename, 'jpg')
AttributeError: type object 'QPixmap' has no attribute 'grabWindow'
推荐答案
你应该使用 QScreen::grabWindow()
代替.QPixmap::grabWindow()
在 Qt 中已弃用5.0 因为:
You should use QScreen::grabWindow()
instead. QPixmap::grabWindow()
is deprecated in Qt 5.0 because:
可能存在平台插件,其中窗口系统标识符 (WId) 是屏幕本地的.
there might be platform plugins in which window system identifiers (WId) are local to a screen.
这篇关于'QPixmap' 没有属性 'grabWindow'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文