QT报表开发(limereport + QAbstractTableModel)

一、简介

limereport是俄罗斯人QT开发的报表设计器,功能很强大,简单容易上手。网上有编译和读取数据库的教程,在此我不累述,本文主要介绍通过Qt的tablemode加载数据。

二、主要代码

1)重新了QAbstractTableModel通过,数据封装在结构体里。

    AlarmQueryModel *m_pModelAlarmQuery = new AlarmQueryModel();QList listInfo;Stu_Alarm_Info STUINFO;STUINFO.iTotalPage = 1;STUINFO.strAlarmid = "strAlarmid ";STUINFO.strEcscode = "strEcscode ";STUINFO.strDevid = "strDevid ";STUINFO.strAlarmCode = "strAlarmCode ";STUINFO.strAlarmtype = "strAlarmtype ";STUINFO.strAlarmgrade = "strAlarmgrade ";STUINFO.strAlarmDate = "strAlarmDate ";STUINFO.strAlarmDesc = "strAlarmDesc ";listInfo.insert(0 ,STUINFO );listInfo.insert(1 ,STUINFO1 );listInfo.insert(2 ,STUINFO );listInfo.insert(3 ,STUINFO );m_pModelAlarmQuery->setModelData(listInfo);

2)向LimeReport添加tablemodel

    report = new LimeReport::ReportEngine(this);  //to create reportenginereport->dataManager()->addModel("周报",m_pModelAlarmQuery,false);report->dataManager()->addModel( "月报",m_pModelAlarmQuery,false);report->dataManager()->addModel("年报",m_pModelAlarmQuery,false);report->dataManager()->addModel("m_pModelAlarmQuery",m_pModelAlarmQuery,false);  //to add datasource to report enginereport->loadFromFile("D:\\1.lrxml");  //to load report template file

报表设计其中就会显示添加的model了

3)设计报表

选择数据块,并向DataBand中放入model参数,

 

 预览后发现只有一条数据

 选中DataBand,修改数据源,再预览即可展示你写入model的数据了

 

 代码如下https://download.csdn.net/download/qq_22000089/87006486

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部