我的是delphi5 qickreport打印(100分)

  • 主题发起人 主题发起人 jingzux
  • 开始时间 开始时间
J

jingzux

Unregistered / Unconfirmed
GUEST, unregistred user!
我的是delphi5 qickreport打印,打印预览是对的,可是打印机(打印机是LQ 1600II)横向打印超过A4幅面的内容,纸张大小已设为自定义,可超过A4的部分就是打不出来,请教高手解答一下,谢谢
 
去控制面板,在打印机设置里也把纸张设成自定尺寸。
 
自定义纸张 打印机于quickreport自定义应一致。
 
控制面板?我找不到那里可以设置成纸张自定尺寸?
 
控制面板->打印机->设置
 
2000下没有设置,只有打印首选项,
里面有布局,纸张/质量(LQ 1600II)
布局有:纵向和横向,页序有从前向后,从后向前,每张纸打印的页数。
纸张/质量:只有送纸器选择。
高级中纸张大小里面很多,不知设置那一项。我没发现有自定纸这项。
还有打印质量等和纸大小无关。
 
打印首选项-布局-高级-纸张大小-custom。
 
打印首选项-布局-高级-纸张大小-custom。
没有找到这一项,我的打印机是LQ-1600II
 
我的是lq1600k,应该有仔细点。
 
真的没有,我看一看二了,一个一个看。不知为什么。
 
纸张大小 旁有下拉列表。
 
对啊,就是找不到:custom
这一项。
 
纸张大小在NT和2000下找不到custom,是不是不支持自定义?
我在打印机的服务器属性中加了一个名为jingzu,43cmX32cm的纸张格式,在打印机的设置属性中也找不到。本站的所有程序设置纸张大小程序我都试过,都是只打A4。
原来我用DELPHI3.0写的程序是可以自定义打印的。后因重安装系统用了DELPHI5.0重编程以后就不能打印了。这到底是什么原因啊。有办法解决这个问题吗?
 
这是我原来的DELPHI3.0的设置纸张大小的程序。经DELPHI5.0编译后就失效。
function setprin(const x,y:integer):boolean;
//ÉèÖÃÖ½ÕÅ´óС
var ad1,ad2,ap:array[0..255] of char;
dh:Thandle;
dm:pdevicemode;
begin
result:=true;
try
printer.GetPrinter(ad1,ad2,ap,dh);
if dh=0 then
begin
printer.PrinterIndex:=printer.PrinterIndex;
printer.GetPrinter(ad1,ad2,ap,dh);
end;
if dh=0 then
raise exception.Create('²»Äܳõʼ»¯´òÓ¡»ú')
else
dm:=globallock(dh);
if dh<>0 then
begin
globalunlock(dh);
with dm^do
begin
dmfields:=dmfields or DM_PAPERWIDTH or DM_PAPERLENGTH;
dmpapersize:=DMPAPER_USER;
dmpaperwidth:=x;//3400;
dmpaperlength:=y;//4500;
printer.SetPrinter(ad1,ad2,ap,dh);
end;
// if GetPaperWidth <3399 then
// messagebox(handle,'&amp;Iuml;&amp;micro;&amp;Iacute;&amp;sup3;&amp;Auml;&amp;not;&amp;Egrave;&amp;Iuml;&amp;acute;ò&amp;Oacute;&amp;iexcl;&amp;raquo;ú&amp;micro;&amp;Auml;&amp;acute;ò&amp;Oacute;&amp;iexcl;&amp;Ouml;&amp;frac12;&amp;Otilde;&amp;Aring;&amp;acute;ó&amp;ETH;&amp;iexcl;&amp;sup2;&amp;raquo;&amp;Auml;&amp;Uuml;&amp;Acirc;ú×&amp;atilde;&amp;acute;ò&amp;Oacute;&amp;iexcl;&amp;Egrave;&amp;Icirc;&amp;Icirc;&amp;ntilde;&amp;micro;&amp;Auml;&amp;ETH;è&amp;Ograve;&amp;ordf;&amp;pound;&amp;iexcl;',MB_ICONWARNING+MB_OK);
end;
except
result:=false;
end;
end;
 
在开始菜单-》设置-》打印机 ,在文件菜单中选择服务器属性,创建新格式
 
jingzux,好象在win2000中,最大就是打A4,当然我也不能确定.
 
我发现和WIN2000版本有关。我在另一台机上安装WINDOWS2000SP1就可以设置纸张,而直接安装SP3版就不行。
我解决的问题就是安装WIN2000SP1就可以了。升级到SP4也没有问题。
 
多人接受答案了。
 

Similar threads

I
回复
0
查看
1K
import
I
I
回复
0
查看
2K
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部