首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

qt打印预览 画图有关问题

2014-01-03 
qt打印预览 画图问题print::print(QWidget *parent) :QWidget(parent),ui(new Ui::print){ui-setupUi(thi

qt打印预览 画图问题
print::print(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::print)
{
    ui->setupUi(this);
    connect(ui->b2, SIGNAL(clicked()), this, SLOT(printview()));
}

print::~print()
{
    delete ui;
}

void print::printview(){
    QPrinter printer;
    QPrintPreviewDialog printview(&printer, this);
    printview.setMinimumSize(800,700);
    connect(&printview, SIGNAL(paintRequested(QPrinter *)),this,SLOT(printPreview(QPrinter *)));

    printview.exec();
}
void print::printPreview(QPrinter *printer){
    printer->setPageSize(QPrinter::A4);
    QPainter painter(printer);

    painter.drawRect(30, 30, 500,500);// 画个矩形
    add_data(printer);
}

void print::add_data(QPrinter *printer){
    QPainter painter(printer);
    painter.drawLine(0, 0, 600, 600);// 画一条线

}
问题:只能画出矩形 而直线画不出来  为什么啊  该怎么做才能都画出来啊  不能把painter.drawRect和pinter.drawLine放到同一个函数里  像我那样放到两个函数里 这个问题该怎么解决   
[解决办法]
试一下把前面的painter传到add_data函数中。

热点排行