liuligang88:恩,谢谢,但是我不知道怎么能和Qt结合起来,就好比Qt工程中的一些数据怎么弄到报表上?
如果可以,能不能说的详细一点。
(2016-01-12 19:37) ![](http://www.qtcn.org/bbs/images/back.gif)
这个很简单, 自带代码里面有一个demo工程,很多实例。
其实特别简单, 就2步就能实现
1. 加载报表, 就是那个生成的xml文件。
report = new QtRPT(this);
report->loadReport(fileName)
2. 相应设置值的信号
QObject::connect(report, SIGNAL(setValue(const int, const QString, QVariant&, const int)),
this, SLOT(setValue(const int, const QString, QVariant&, const int)));
void ExampleDlg4::setValue(const int recNo, const QString paramName, QVariant ¶mValue, const int reportPage) {
Q_UNUSED(reportPage);
if (paramName == "NN")
paramValue = recNo+1;
if (paramName == "Goods") {
if (ui->tableWidget->item(recNo,0) == 0) return;
paramValue = ui->tableWidget->item(recNo,0)->text();
}
if (paramName == "Quantity") {
if (ui->tableWidget->item(recNo,1) == 0) return;
paramValue = ui->tableWidget->item(recNo,1)->text();
}
if (paramName == "Price") {
if (ui->tableWidget->item(recNo,2) == 0) return;
paramValue = ui->tableWidget->item(recNo,2)->text();
}
if (paramName == "Sum") {
if (ui->tableWidget->item(recNo,3) == 0) return;
paramValue = ui->tableWidget->item(recNo,3)->text();
}
}
根据paramName 来给相应的paramValue 附上相应的值就行了。
赋值后 report->printExec(); 就完成了。