为什么在BCB的QuickReport的Page属性纸张类型中没有A2类型?要怎样添加进去?

telescope 2003-10-18 04:47:24
我发现,程序运行期,在程序的打印预览中的打印机设置时,纸张类型有A2的,但在程序设计期,QuickReport的Page属性纸张类型中却没有A2纸,那假如我想选A2纸,应该怎么办?
其实,我本来的目的是设置一个比较大的自定义纸型,无奈QuickReport不争气,自定义纸型预览时一切正常,运行期真正打印时在打印机设置的纸张类型里找不到自定义设置那项,结果只好重新打算,想选一个比我的自定义纸型还大的A2纸,结果又遇到本贴主题中的问题.
我用的是BCB6,无论你能解决上述两个问题中的哪个,我都给分!!谢谢!!
...全文
69 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
helin33 2004-03-23
  • 打赏
  • 举报
回复
笨蛋!!!
拿我的代码去吧,免费!!
HANDLE *hPrinter;
DWORD dwNeeded;
FORM_INFO_1 * pF1;

String szPrinterName="FP-530k"; //打印机名
String lczz="历程纸张";
pF1=new(FORM_INFO_1);
if(!OpenPrinter(szPrinterName.c_str(),hPrinter,NULL))
{
throw Exception("Call to OpenPrinter() failed");
}
else
{
pF1->Flags=FORM_USER;
pF1->pName=lczz.c_str();
pF1->Size.cx=217*1000; //根据实际需要设定纸张大小
pF1->Size.cy=140*1000;
pF1->ImageableArea.left=0;
pF1->ImageableArea.top=0;
pF1->ImageableArea.right=pF1->Size.cx;
pF1->ImageableArea.bottom=pF1->Size.cy;
if (!AddForm(hPrinter,1,pF1))
ShowMessage("无法添加自定义纸张");
else
ClosePrinter(hPrinter);
}
delete pF1;

之后,便会看到你自己定义的纸张了。爽吧.
TryToday 2003-10-19
  • 打赏
  • 举报
回复
是这样的,
你安装的打印机驱动程序不支持那么大的纸, 也就是说那种打印机本来就打印不出A2纸,
比如Epson 300K, 系统当然不允许选择A2.
如果只想试验,可以安装一个不存在的大打印机的驱动程序.
telescope 2003-10-18
  • 打赏
  • 举报
回复
哥们,我选的相近的纸就是A2啊,可是在QuickReport的Page属性纸张类型中没有A2纸,有什么办法能把A2纸加进去么?
52vc 2003-10-18
  • 打赏
  • 举报
回复
选择一个相近似的纸,试试

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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