qt打印问题

小_柒 2008-09-17 07:10:58
小弟正在使用Qt写一个打印程序,不想使用默认的QPrintDialog,需自定义打印设置界面。
请问大侠们,如何确定与本机相连的有哪些打印机?打印时如何选择打印机?
万分感激~~~~~~~
...全文
274 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
星羽 2008-09-18
  • 打赏
  • 举报
回复

#include "windows.h"

int main()
{
unsigned char *pOutDevMode;
long lSize;
HANDLE hPrinter;
BYTE Info[250];
DRIVER_INFO_1 *p;
DWORD dwNeed, dwReturn, dwBuf = 250;
if (::EnumPrinterDrivers(NULL, NULL, 1, Info, dwBuf, &dwNeed, &dwReturn))
{
p = (DRIVER_INFO_1 *)Info;
for(UINT m = 0; m < dwReturn; m ++) {
hPrinter = NULL;
::OpenPrinter(p->pName, &hPrinter, NULL);
lSize = ::DocumentProperties(NULL, hPrinter, NULL, NULL, NULL, 0);
pOutDevMode = new unsigned char [lSize];
::DocumentProperties(NULL, hPrinter, NULL, (PDEVMODE)pOutDevMode, NULL, DM_OUT_BUFFER);//得到你想要的信息
}
}
return 0;
}

小_柒 2008-09-18
  • 打赏
  • 举报
回复
我是在VS2005集成QT,建立的Win32工程,加入以上代码编译,会提示很多变量类型为undeclared identifier,HANDLE、DWORD都是这样。
请问还需要什么配置?
shada 2008-09-18
  • 打赏
  • 举报
回复
如果在win下使用,以上代码是可以加入qt程序的。
小_柒 2008-09-18
  • 打赏
  • 举报
回复
谢谢楼上
不过我想使用QT来实现
获得默认打印机的方法是有,但我想知道获得其他打印机信息的方法,还望高人指导
小_柒 2008-09-18
  • 打赏
  • 举报
回复
还望有高手关注一下我在5楼的问题啊~~~~~~~
小_柒 2008-09-18
  • 打赏
  • 举报
回复
谢谢大家。
“如何确定与本机相连的有哪些打印机”这个问题已经解决。
但在打印时如何确定使用哪个打印机呢?能否在QPrinter中体现或者其他?

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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