В чем ошибка создания скрина?

Есть код, который должен делать скрин, но почему то делает скрин черного экрана:

class MainWindow(QMainWindow):
    def __init__(self, args):
        super(MainWindow, self).__init__()
        self.setWindowTitle("График с точками")
        self.setGeometry(100, 100, 1000, 1000)
        self.graphWidget = PlotWidget()
        ...
        self.len_args = len(args)
        self.argv = args
        self.drawPicture()
    def runFile(self):
        ...
        self.drawPicture()
        screen = QApplication.primaryScreen()
        image = screen.grabWindow(self.graphWidget.winId())
        image.save(f"func_tests/a.png")
    def drawPicture(self):
        # Отрисовывает картинку

Насколько я понял, graphWidget.winId() хранит значение предыдущего окна? То есть при том, когда я только запустил программу, он сохранит черный экран, выполню одну операцию и снова нарисую картинку - он сохранит начальное состояние, и так далее. Пробовал в runFile два раза подряд написать self.drawPicture(), но не помогло, все также сохраняет черный экран. Может ли кто то помочь?

Upd: Когда запускаю программу сам, и жму кнопочки, то как раз в файл сохраняет предыдущее состояние, когда через консоль запускаю - почему то вообще всегда черный экран


Ответы (0 шт):