先到http://download.csdn.net/source/1732651下载一个打印类,这个是类是在codeproject里找到的,然后将里面的
#include "AutoStuMisDoc.h" #include "AutoStuMisView.h"
改为你要应用的程序的头文件。
然后在你要用的视图.h中添加两个变量
CListCtrl& m_cListCtrl;
CListDemoViewPrint m_Print;
然后在构造函数中初始化 :m_cListCtrl( GetListCtrl() )
接着在OnInitialUpdate()函数中添加
// Initialize printing m_Print.SetListCtrl(&m_cListCtrl); m_Print.SetListView(this); m_Print.SetAppName(AfxGetAppName()); m_Print.SetDocTitle(GetDocument()->GetTitle());
然后更改下面四个函数就可以了
BOOL CAutoStuMisView::OnPreparePrinting(CPrintInfo* pInfo) { // default preparation m_Print.OnPreparePrinting(pInfo); return DoPreparePrinting(pInfo); } void CAutoStuMisView::OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo) { // TODO: add extra initialization before printing m_Print.OnBeginPrinting(pDC, pInfo); } void CAutoStuMisView::OnPrint(CDC* pDC, CPrintInfo* pInfo) { // TODO: Add your specialized code here and/or call the base class m_Print.OnPrint(pDC, pInfo); } void CAutoStuMisView::OnEndPrinting(CDC* pDC, CPrintInfo* pInfo) { // TODO: add cleanup after printing m_Print.OnEndPrinting(pDC, pInfo); }
运行一下就可以了。
希望对大家有帮助。