我的vc打印程序,打印的效果是总是重复打印,困惑!恳请高人赐教!

lijiangtao23 2010-04-16 06:40:20
OnBnClickedButtonPrint()
{
CPrintDialog dlgPrint(FALSE);
if (IDCANCEL == dlgPrint.DoModal())
{
return;
}
// is a default printer set up?
HDC hdcPrinter = dlgPrint.GetPrinterDC();
if (hdcPrinter == NULL)
{
AfxMessageBox(_T("Buy a printer!"));
}
else
{
// create a CDC and attach it to the default printer
CDC dcPrinter;
dcPrinter.Attach(hdcPrinter);

// call StartDoc() to begin printing
DOCINFO docinfo;
memset(&docinfo, 0, sizeof(docinfo));
...
// if it fails, complain and exit gracefully
if (dcPrinter.StartDoc(&docinfo) < 0)
{
AfxMessageBox(_T("Printer wouldn't initalize"));
}
else
{
int nCopies = dlgPrint.GetCopies();
int nMaxPageNo = m_ListCtrlBaoBiao.GetItemCount() / ITEM_SUM;
int nValue = m_ListCtrlBaoBiao.GetItemCount() % ITEM_SUM;
if (nValue > 0)
{
++nMaxPageNo;
}
CPen penLine, *oldPen;
penLine.CreatePen(PS_SOLID, 6, RGB(0, 0, 0));
oldPen = dcPrinter.SelectObject(&penLine);
for (int nIndex = 0; nIndex < nCopies; ++nIndex)
{
// start a page
int nItemNo = 0;
for (int nPageNo = 0; nPageNo < nMaxPageNo; ++nPageNo)
{
if (dcPrinter.StartPage() < 0)
{
AfxMessageBox(_T("Could not start page"));
dcPrinter.AbortDoc();
}
else
{
// actually do some printing
PrintPage(dcPrinter, nItemNo);
dcPrinter.EndPage();
}//else
}//for
}

dcPrinter.SelectObject(oldPen);
}//else
dcPrinter.EndDoc();
ReleaseDC(&dcPrinter);
}//else
::DeleteDC(hdcPrinter);
}
我先描述一下我的问题吧:
当我选择打印一份时,打印机就打印一份--操作正常,但是当选择打印两份时,打印机就好像执行了两次打印命令似的:执行第一次,打印了两份,执行第二次,又打印了两份,结果就打印了四份。从而就出现了重复打印,我选择打印两份吗,它就给我打印了四份,气坏我了。
请路过的高人,指教我一下吧,是我的程序有问题呢,还是打印机的问题呢? 谢!谢!谢!
...全文
76 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sanctimonious 2010-04-17
  • 打赏
  • 举报
回复
转到MFC区吧
job82824 2010-04-16
  • 打赏
  • 举报
回复
可能是通讯的单片机没弄好吧?连发了两次数据包的缘故吧-_-!
acdbxzyw 2010-04-16
  • 打赏
  • 举报
回复
帮顶。。。
内容概要:本文围绕水陆两栖无人机的任务规划与执行问题,提出了一种基于Matlab实现的智能路径规划解决方案,重点融合粒子群优化算法(PSO)与遗传算法(GA)进行三维环境下的避障路径规划。研究系统性地构建了从复杂地形建模、任务需求分析到算法设计与仿真实验的完整流程,实现了在多约束、动态障碍物等复杂环境下无人机的高效任务调度。通过对GA与PSO两种智能优化算法在路径长度、收敛速度、路径平滑度及稳定性等方面的对比分析,深入探讨了各自在无人机路径规划中的适用场景与性能差异,验证了所提方法在提升任务执行效率与安全性方面的有效性。该方案不仅适用于水陆交互通用场景,也为多模态无人系统自主导航提供了可扩展的技术框架。; 适合人群:具备一定Matlab编程能力和算法基础,从事无人机路径规划、智能优化算法研究、自动化控制或相关领域科研工作的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于水陆两栖无人机在复杂自然环境(如江河湖海与陆地交错区域)中的自主巡航与任务执行;②比较遗传算法与粒子群算法在三维动态路径规划中的优化性能,指导实际工程中算法选型;③为多约束条件下无人系统的自主决策与实时避障提供算法支持与仿真验证平台。; 阅读建议:建议读者结合提供的Matlab代码进行动手实践,重点关注两种算法的数学建模过程、适应度函数设计、参数调优策略及路径生成逻辑,通过仿真实验直观对比算法性能差异,深入理解智能优化算法在复杂路径规划问题中的应用机制与优化潜力。

6,872

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧