Comment intégrer et utiliser facilement NCReport dans n'importe quelle application Qt

NCReport est une application multiplateforme et une infrastructure d'interface utilisateur basée sur Qt. Il s'agit d'une bibliothèque de moteurs de rapports, d'un générateur de rapports, d'un concepteur de rapports, d'un enregistreur de rapports, d'un outil de rapports et d'une solution de rapports puissants, rapides, multi-plateformes et faciles à utiliser écrits en C ++. Si vous recherchez un moteur de rapport Qt, un outil de rapport Qt, une bibliothèque de rapports Qt, etc., NCReport est votre meilleur choix. Et NCReport est compatible avec Qt5 et Qt4.

Le système se compose de deux parties: la bibliothèque de présentation de rapports et l'application GUI du concepteur de rapports. Le moteur de rapport peut être utilisé et implémenté séparément. Le format de fichier du modèle de rapport est le format XML et le modèle peut être chargé à partir d'un fichier, d'une chaîne ou d'une base de données SQL. Le système peut générer différents types de sortie, tels que l'imprimante directe, la fenêtre de prévisualisation interne, le post-scriptum, le PDF, le SVG, l'image, le texte, le HTML. Le concepteur de rapports facilite la création de définitions XML de rapport.

NCReport a été mis à jour vers la version 2.23.4 et quelques bugs mineurs ont été corrigés. Les amis intéressés sont invités à le télécharger et à en faire l'expérience ~

[Huidu.com] Téléchargez la dernière version d'essai de NCReport

Solution de reporting NCReport mise à jour vers la version 2.23.3 | téléchargement ci-joint

Dossier d'ingénierie

QT + =
interface graphique principale supérieure à (QT_MAJOR_VERSION, 4): QT + = prise en charge de l'impression des widgets

TARGET = MySimpleDemo
TEMPLATE = app
SOURCES + = main.cpp

win32: CONFIG (release, debug | release): LIBS + = -L $$ PWD /../ ncreport / lib / -lNCReport2
else: win32: CONFIG (debug, debug | release): LIBS + = -L $$ PWD /../ncreport/lib/ -lNCReportDebug2

INCLUDEPATH + = $$ PWD /../ ncreport / includes
Exécuter le rapport dans la fenêtre d'aperçu 1

int main (int argc, char * argv [])
{
QApplication a (argc, argv);

NCReport *report = new NCReport();

report->setReportSource( NCReportSource::File ); // set report source type
report->setReportFile("myreport.ncr"); //set the report filename fullpath or relative to dir
report->runReportToPreview(); // run to preview output

// error handling
if( report->hasError())
{
    QMessageBox msgBox;
    msgBox.setText(QObject::tr("Report error: ") + report->lastErrorMsg());
    msgBox.exec();
}
else
{
    // show preview
    NCReportPreviewWindow *pv = new NCReportPreviewWindow();    // create preview window
    pv->setOutput( (NCReportPreviewOutput*)report->output() );  // add output to the window
    pv->setReport(report);
    pv->setWindowModality(Qt::ApplicationModal );    // set modality
    pv->setAttribute( Qt::WA_DeleteOnClose );    // set attrib
    pv->exec();  // run like modal dialog
}
delete report;

}
Exécutez le rapport dans la fenêtre d'aperçu 2
int main (int argc, char * argv [])
{
QApplication a (argc, argv);

NCReport *report = new NCReport();
report->setReportFile("myreport.ncr"); //set the report filename fullpath or relative to dir
report->runReportToShowPreview(); // run and show to preview output

// error handling
if( report->hasError())
{
    QMessageBox msgBox;
    msgBox.setText(QObject::tr("Report error: ") + report->lastErrorMsg());
    msgBox.exec();
}
delete report;

} Générer
le rapport au format PDF
int main (int argc, char * argv [])
{
QApplication a (argc, argv);

NCReport *report = new NCReport();
report->setReportFile("myreport.ncr"); //set the report filename fullpath or relative to dir
report->runReportToPDF("c:/temp/myreportoutput.pdf")

// error handling
if( report->hasError())
{
    QMessageBox msgBox;
    msgBox.setText(QObject::tr("Report error: ") + report->lastErrorMsg());
    msgBox.exec();
}
delete report;

}
** Les amis qui souhaitent connaître ou acheter des licences NCReport authentiques sont invités à consulter le service client en ligne de Huidu

Je suppose que tu aimes

Origine blog.51cto.com/14874181/2576871
conseillé
Classement