当前位置: 首页 > 图文教程 > 开发语言 > VC++ > 对话框打印预览及打印
| 对话框打印预览及打印 下载源代码 //打印结构typedef struct{ int nMaxLine; //ClistCtrl中的最大行数 int nCountPage; //一共页数 int nCurPage; //当前页码 BOOL IsPrint; //是否打印,false 表示预览 HWND hWnd; //窗口句柄 HWND hListView; //列表控件句柄 TCHAR szTag[256]; //其它数据 int nTag; //其它数据 LPVOID lpVoid; //其它数据}PRNINFO, *PPRNINFO;//打印按钮代码void CXJWH::OnPrint() //注这里的 CXJWH 为数据管理窗口即打印类的调用窗口{ if(CLtv。GetItemCount()<= 0) //CLtv 为ClistCtrl, 这里检测是否有数据在列表中 return; PRNINFO PrnInfo = {0}; //此为用到的一个结构, 见下面定义 PrnInfo。hListView = CLtv。m_hWnd; //ClistCtrl的句柄 PrnInfo。hWnd = this->m_hWnd; //当前窗口句柄 PrnInfo。IsPrint = FALSE; //当前为预览 PrnInfo。nCurPage = 1; //当前页为第一页 PrnInfo。nMaxLine = CLtv。GetItemCount(); //ClistCtrl中的数据行数 CPreParent DlgPreView; //声明打印类 DlgPreView。SetCallBackFun(DrawInfo, PrnInfo); //在这里给它设定我们自己的打印函数 DlgPreView。DoModal(); //预览} 注: 这里的 DlgPreView.SetCallBackFun(DrawInfo,PrnInfo); DrawInfo 是我们在 CXJWH 定义好的静态打印函数。 static void DrawInfo(CDC &memDC,PRNINFO PrnInfo); 由于本人写作水平有限,所以还是请大家看代码吧! |
评论 (0) All