答案 0 :(得分:2)
您可以使用QWidget方法将小部件渲染为图像:
void render(QPaintDevice * target, const QPoint & targetOffset = QPoint(), const QRegion & sourceRegion = QRegion(), RenderFlags renderFlags = RenderFlags( DrawWindowBackground | DrawChildren ))
void render(QPainter * painter, const QPoint & targetOffset = QPoint(), const QRegion & sourceRegion = QRegion(), RenderFlags renderFlags = RenderFlags( DrawWindowBackground | DrawChildren ))
并使用所需大小的结果QImage向用户显示预览。
答案 1 :(得分:0)
作为evilruff has said,可以将小部件呈现为绘画设备或画家。当然,你为这个小部件的额外绘画付出了代价。
另一个选择是grab the composited widget's backing store directly as a QImage
。在Qt 5中,这适用于所有平台,但OpenGL上下文支持的小部件除外。