做了个继承自CWnd的类,想增加打印功能,在事件处理中添加如下代码: CDC dc;
CPrintDialog printDlg(FALSE);
if (printDlg.DoModal() == IDCANCEL)
return; dc.Attach(printDlg.GetPrinterDC());
dc.m_bPrinting = TRUE;
Print(&dc,PRF_CLIENT );程序执行到Print(&dc,PRF_CLIENT );无反应,请问诸位,在cwnd能不能使用print打印,如果能有,什么办法解决,或者有什么其他好的方式在cwnd下打印,急求各位大大的指导
CPrintDialog printDlg(FALSE);
if (printDlg.DoModal() == IDCANCEL)
return; dc.Attach(printDlg.GetPrinterDC());
dc.m_bPrinting = TRUE;
Print(&dc,PRF_CLIENT );程序执行到Print(&dc,PRF_CLIENT );无反应,请问诸位,在cwnd能不能使用print打印,如果能有,什么办法解决,或者有什么其他好的方式在cwnd下打印,急求各位大大的指导
解决方案 »
- 如何用MFC做出高仿QQ登陆界面,最好是像2012一样的
- 急急急! 如何在客户端连接服器端成功后,如何在客户端得到它是用哪个端口连接的??
- 大家帮帮忙!CInternetSession的问题!
- 给高手送分了!Web Service 中一个关于 VC6 客户端怎样调用 C# 服务端的小问题
- 如何像windows桌面一样 ,能让图标一点一点移动,也就是让它拖动到指定位置!急!!!
- 对unix服务器上的oracle数据库客户端的应用程序可以用vc编吗?
- 小弟开始我想学VC++,不知选哪本书好,请各位赐教!
- 我要将一张表存成文件,有什么好的方法吗?
- ADOConnection Execute问题
- 有关堆栈的小问题
- 请问我在繁体操作系统下,怎么用程序处理简体文件名?
- 双网卡的bind问题
=================
This code fragment gets the default printer, opens a print job, and spools one page with Hello, World! on it.// Get the default printer.
CPrintDialog dlg(FALSE);
dlg.GetDefaults();// Is a default printer set up?
HDC hdcPrinter = dlg.GetPrinterDC();
if (hdcPrinter == NULL)
{
MessageBox(_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));
docinfo.cbSize = sizeof(docinfo);
docinfo.lpszDocName = _T("CDC::StartDoc() Code Fragment"); // If it fails, complain and exit gracefully.
if (dcPrinter.StartDoc(&docinfo) < 0)
{
MessageBox(_T("Printer would not initalize"));
}
else
{
// Start a page.
if (dcPrinter.StartPage() < 0)
{
MessageBox(_T("Could not start page"));
dcPrinter.AbortDoc();
}
else
{
// Do some printing.
CGdiObject* pOldFont = dcPrinter.SelectStockObject(SYSTEM_FONT); dcPrinter.TextOut(50, 50, _T("Hello World!"), 12); dcPrinter.EndPage();
dcPrinter.EndDoc();
dcPrinter.SelectObject(pOldFont);
}
}
}