• 5407阅读
  • 2回复

如何打印一个dialog? [复制链接]

上一主题 下一主题
离线yzpdsg
 

只看楼主 倒序阅读 楼主  发表于: 2010-06-25
我画了一个dialog,其中有lineEdit、label等控件。如何将其中的内容打印在纸上呢?
离线xtfllbl

只看该作者 1楼 发表于: 2010-06-25

脑残回答:
首先,你只是画了一个dialog,如果是这样,那请你print screen,然后打印。。。



如果要使用程序自动打印,请参考QPrinter
上海欢迎您
离线yzpdsg

只看该作者 2楼 发表于: 2010-06-25
我看到了一个打印函数:

void printDocument(const QString &strPdfFile, int iFormat = 1)
{
    QPrinter p;
    QTextDocument doc;

    if (iFormat == 0)
    {
        p.setPageSize(QPrinter::A4);
        p.setOutputFormat(QPrinter::PdfFormat);
        p.setOutputFileName(strPdfFile);
        doc.print(&p);
    }
    else
    {
        doc.setPageSize(QSizeF(p.logicalDpiX()*(80/25.4),
                p.logicalDpiY()*(297/25.4)));
        p.setOutputFormat(QPrinter::NativeFormat);
        doc.print(&p);
    }
}

是不是把QDialog转换成QTextDocument类型就可以了?那么如何转换呢?
快速回复
限100 字节
 
上一个 下一个