WEB开发网      濠电娀娼ч崐濠氬疾椤愶附鍋熸い鏍ㄧ〒闂勫嫰鏌﹀Ο渚Ц闁诲氦顕ч湁婵犲﹤楠告禍鍓х磼鏉堛劌绗氶柟宄版嚇閹晠宕归銈嗘濠电偞鍨堕幐鎾磻閹捐秮褰掓偐閻戞﹩妫勯梺鎼炲妼鐎涒晝绮嬪澶樻晝闁挎繂鏌婇敃鍌涚厵閻庢稒锚閻忥絾绻濇繝鍐ㄧ伌闁诡垰鍟村畷鐔碱敂閸♀晙绱樺┑鐐差嚟婵儳螞閸曨剚鍙忛柍鍝勬噹缁€澶嬬箾閹存繄锛嶆鐐灲閹綊宕惰濡插鏌涢妸銉ヮ劉缂佸倸绉归弫鎾绘晸閿燂拷 ---闂備焦瀵уú鈺呭箯閿燂拷
开发学院软件开发VC 报表输出轻松搞定 阅读

报表输出轻松搞定

 2010-07-06 20:42:45 来源:WEB开发网 闂備線娼уΛ鎾箯閿燂拷闂備礁鎲¢崹鐢垫崲閹扮増鍎嶆い鎺戝€甸崑鎾斥槈濞嗗秳娌紓鍌氱▌閹凤拷濠电姭鎷冮崨顓濈捕闂侀潧娲ゅú銊╁焵椤掍胶鈯曢柕鍥╁仧缁辩偤鏁撻敓锟�闂備線娼уΛ鎾箯閿燂拷  闂備胶枪缁绘鈻嶉弴銏犳瀬闁绘劕鎼痪褔鏌曟繝蹇曠窗闁煎壊浜滈—鍐偓锝庡墮娴犙勭箾閸喎鐏ユい鏇樺劦椤㈡瑩鎮℃惔銇帮拷
核心提示:一、刚刚开发了一个报表输出的 COM,可以动态的添加数据,报表输出轻松搞定,代码没有限制,可随意使用,二、代码说明1、首先注册COM控件 使用regsvr32命令2、在stdafx中加入#import ".\YTReport.tlb"\rename_namespace("TestYTRep

一、刚刚开发了一个报表输出的 COM,可以动态的添加数据。代码没有限制,可随意使用。现在还在修改一些细节的地方,修改后会再次上传。

二、代码说明

1、首先注册COM控件 使用regsvr32命令
2、在stdafx中加入#import ".\YTReport.tlb"\
  rename_namespace("TestYTReportDriver")
using namespace TestYTReportDriver;
3、在APP文件中加入CoInitialize(NULL);和CoUninitialize();用于初始化COM环境和释放环境
4、建立变量IYTReportAPtr m_YTPrint;
初始化:
m_YTPrint = NULL;
if (FAILED(m_YTPrint.CreateInstance(__uuidof(YTReportA))))
{
  MessageBox("清先注册COM","提示");
}
5、程序可以输出双联表和普通模式
   普通模式分为正表和反表两种
6、当然程序推出时别忘了释放对象
m_YTPrint.Release();

三、图像

第一个表格使用SetReportHeadA实现

第二个表格使用SetReportHeadB实现

第三个表格使用SetReportHeadC实现

-----------------------------COM接口标示------------------------------------------------

//准备打印

HRESULT PrePrint([out,retval]long *pRet);

----------------------------------------------------------------------------------------

//设置主标题

HRESULT SetTitleA([in]BSTR MyTitle,[out,retval]long *pRet);

----------------------------------------------------------------------------------------

//设置副标题

HRESULT SetTitleB([in]BSTR MyTitle,[out,retval]long *pRet);

----------------------------------------------------------------------------------------

//strReportHead"列名|对齐方式(m,l,r)|该列宽度(以一个数字的宽度为单位)|..."

//注:该字串最后不以"|"结尾。

HRESULT SetReportHeadA([in]BSTR strReportHead,[out,retval]long *pRet);

----------------------------------------------------------------------------------------

//strReportHead:"项目名|项目名|..." (各统计项名称)

// ColWide:统计项对应列的宽度

// ColNum:表格所含列数

//注:字串SubItemName最后不以"|"结尾。

// 采取自动与第一个表宽度对齐的机制。

HRESULT SetReportHeadB([in]BSTR strReportHead,[in]int ColWide,[in]int ColNum,[out,retval]long *pRet);

----------------------------------------------------------------------------------------

1 2  下一页

Tags:报表 输出 轻松

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接