X 我知道了TIPS:左右滑动导航栏可以查看更多栏目
最好有一小段程序完成
>> 本文固定链接: http://www.vcgood.com/archives/384
>> 转载请注明: lisypro 2006年01月18日 于 C语言帝国 发表
用CPrintDialog来实现打印功能
把以下程序段加入你的程序 把dc1当作Device Content. 就任你打印了.注意别画错地方. 自己换页. 更绝的是可调用窗口的OnPrint或OnDraw成员函数直接打印.不用你去做行距多少啦! 但别忘换页.
// 打印 // 建立打印对话框对象 CPrintDialog d1(FALSE,PD_ALLPAGES|PD_ALLPAGES|PD_NOPAGENUMS,NULL); HDC dc1;
if(d1.DoModal()==IDOK){ // 返回一个打印DC句柄 dc1=d1.GetPrinterDC();
// 启动打印工作 StartDoc(dc1,&docin);
// 一页开始 StartPage(dc1);
dc1.textout(…..) dc1.draw(….) ….
// 一页结束 EndPage(dc1);
可以有多个StartPage(dc1) … EndPage(dc1)
// 终止打印工作 EndDoc(dc1); // 删除句柄 if(DeleteDC(dc1)){ return TRUE; }else{ 出错信息 EndDoc(dc1); // 删除句柄 if(DeleteDC(dc1)){ return TRUE; }else{ 出错信息 } }
谢谢,不过我的意思别的中止别的程序的正在打印的文档
你必须先 登录才能发表评论。
用CPrintDialog来实现打印功能
把以下程序段加入你的程序
把dc1当作Device Content.
就任你打印了.注意别画错地方.
自己换页.
更绝的是可调用窗口的OnPrint或OnDraw成员函数直接打印.不用你去做行距多少啦!
但别忘换页.
// 打印
// 建立打印对话框对象
CPrintDialog
d1(FALSE,PD_ALLPAGES|PD_ALLPAGES|PD_NOPAGENUMS,NULL);
HDC dc1;
if(d1.DoModal()==IDOK){
// 返回一个打印DC句柄
dc1=d1.GetPrinterDC();
// 启动打印工作
StartDoc(dc1,&docin);
// 一页开始
StartPage(dc1);
dc1.textout(…..)
dc1.draw(….)
….
// 一页结束
EndPage(dc1);
可以有多个StartPage(dc1)
…
EndPage(dc1)
// 终止打印工作
EndDoc(dc1);
// 删除句柄
if(DeleteDC(dc1)){
return TRUE;
}else{
出错信息
EndDoc(dc1);
// 删除句柄
if(DeleteDC(dc1)){
return TRUE;
}else{
出错信息
}
}
谢谢,不过我的意思别的中止别的程序的正在打印的文档