问题
I work at my homework in Qt Creator, where I paint to QWidget and I need to save some part of this QWdiget.
I tried to solve this problem:
QPixmap pixmap;
pixmap.copy(rectangle); // rectangle is part of QWidget, which I need to save
pixmap.save("example.png");
Thank you for help.
回答1:
You can use QWidget::render for this. Assuming rectangle
is a QRect:
QPixmap pixmap(rectangle->size());
widget->render(&pixmap, QPoint(), QRegion(rectangle));
回答2:
From QWidget::Grab:
QPixmap QWidget::grab(const QRect &rectangle = QRect(QPoint(0, 0), QSize(-1, -1)))
来源:https://stackoverflow.com/questions/10381854/how-to-create-screenshot-of-qwidget