14

我在 Qt Creator 中做作业,在那里我绘制到 QWidget,我需要保存这个 QWdiget 的一部分。

我试图解决这个问题:

 QPixmap pixmap;
 pixmap.copy(rectangle); // rectangle is part of QWidget, which I need to save
 pixmap.save("example.png");

谢谢你的帮助。

4

2 回答 2

25

你可以用QWidget::render这个。假设rectangle是一个 QRect:

QPixmap pixmap(rectangle->size()); 
widget->render(&pixmap, QPoint(), QRegion(rectangle));
于 2012-04-30T10:16:29.373 回答
4

来自QWidget::Grab

QPixmap QWidget::grab(const QRect &rectangle = QRect(QPoint(0, 0), QSize(-1, -1)))
于 2018-11-29T12:12:35.557 回答