class OsgMainWindow : public QWidget
//要获取窗口的画笔?
void OsgMainWindow::printSlot()//菜单按钮消息
{
QPrinter printer;
QImage image;
QPrintDialog* printDialog = new QPrintDialog(&printer,this);
if(printDialog->exec()){
QPainter painter(&printer);
QRect rect = painter.viewport();
QSize size = image.size();
size.scale(rect.size(), Qt::KeepAspectRatio);
painter.setViewport(rect.x(), rect.y(),
size.width(), size.height());
painter.setWindow(image.rect());
painter.drawImage(0, 0, image);
}
------解决思路----------------------
代码显示:除了你在打印你一个空空的QImage外,你什么都没做