在vc中如何实现打印
现在我在一个对话框窗口中放入显示表的控件,且已连接好数据库,可以显示。
我在这个对话框中加入了一个按钮,想用于打印。不只如何实现那,请大侠帮助。一点击打印按钮就可以打印表的数据,且有表格。
现在我在一个对话框窗口中放入显示表的控件,且已连接好数据库,可以显示。
我在这个对话框中加入了一个按钮,想用于打印。不只如何实现那,请大侠帮助。一点击打印按钮就可以打印表的数据,且有表格。
解决方案 »
- activex控件如何获得所在进程的进程ID
- 为何获得的pDC为NULL
- VC同一个CPP文件中有两个函数A和B,如何让B调用A函数??
- vc如何实现数字的七段数码显示?或者是否有七段数码显示字体?
- activex 控件在IE中无法显示的问题
- 有关焦点问题.非常奇怪.
- 为何在事件开始要求更新编辑框text,却要等事件结束了才更新?
- 当OPengl遇到VC,窗口的客户区不能保证全部被opengl绘制,为什么?
- 请问CreateProcess函数在win2000下怎么用?
- 写纯的windows sdk程序是什么意思?是纯过程化、还是面向对象?用不用mfc?
- CFile类中如何得到文件的创建日期(“yyyymmdd”)?
- 有没有办法在某个函数中设定延时,而不是延时整个程序进程?向高人求救!
DWORD dwNeeded, dwReturned ;
HDC hdc ;
PRINTER_INFO_4 * pinfo4 ;
PRINTER_INFO_5 * pinfo5 ; if (GetVersion () & 0x80000000) // Windows 98
{
EnumPrinters (PRINTER_ENUM_DEFAULT, NULL, 5, NULL,
0, &dwNeeded, &dwReturned) ; pinfo5 = malloc (dwNeeded) ; EnumPrinters (PRINTER_ENUM_DEFAULT, NULL, 5, (PBYTE) pinfo5,
dwNeeded, &dwNeeded, &dwReturned) ; hdc = CreateDC (NULL, pinfo5->pPrinterName, NULL, NULL) ; free (pinfo5) ;
}
else // Windows NT
{
EnumPrinters (PRINTER_ENUM_LOCAL, NULL, 4, NULL,
0, &dwNeeded, &dwReturned) ; pinfo4 = malloc (dwNeeded) ; EnumPrinters (PRINTER_ENUM_LOCAL, NULL, 4, (PBYTE) pinfo4,
dwNeeded, &dwNeeded, &dwReturned) ; hdc = CreateDC (NULL, pinfo4->pPrinterName, NULL, NULL) ; free (pinfo4) ;
}
return hdc ;
}int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpszCmdLine, int iCmdShow)
{
static DOCINFO di = { sizeof (DOCINFO), TEXT ("FormFeed") } ;
HDC hdcPrint = GetPrinterDC () ;
if (hdcPrint != NULL)
{
if (StartDoc (hdcPrint, &di) > 0)
if (StartPage (hdcPrint) > 0 && EndPage (hdcPrint) > 0) {
if (EndPage (hdcPrn) > 0)
EndDoc (hdcPrn) ;
else
bSuccess = FALSE ;
}
EndDoc (hdcPrint) ;
DeleteDC (hdcPrint) ;
}
return 0 ;
}