怎么改变FastReport2.51报表的纸张大小?(50分)

  • 主题发起人 主题发起人 bbscom
  • 开始时间 开始时间
B

bbscom

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.Button2Click(Sender: TObject);
var
frReport:TfrReport;
frPictureView: TfrPictureView;
begin
frReport:=TfrReport.Create(Self);
frReport.Pages.Clear;
frReport.Pages.Add;
frReport.DoublePass := True;
frReport.Pages.Pages[0].ChangePaper($100, 800, 600, -1, poPortrait);//此行不工作???
frPictureView := TfrPictureView.Create;
frPictureView.Prop['Stretched'] := False;
frPictureView.SetBounds(20, 20, 90, 130);
frPictureView.Name := 'ProductPIC';
frReport.Pages.Pages[0].Objects.Add(frPictureView);
frPictureView.Picture.LoadFromFile('e:/winnt/system32/tem.bmp');
frReport.ShowReport;
end;
 
var
v: TfrView;
b: TfrBandView;
Page: TfrPage;
AvailWidth,i,LeftPos, WMemo:integer;
begin
frReport1.Pages.Clear;
frReport1.Pages.Add;
frReport1.Pages[0].ChangePaper(48,241,141,-1,poPortrait);
frReport1.DoublePass:= True;
//两遍报表
Page := frReport1.Pages[0];
Page.ChangePaper(256,2410,1410,-1,poPortrait);
Page.Prop['TopMargin'] := 50;
Page.Prop['LeftMargin'] := 30;
Page.Prop['RightMargin'] := 30;
Page.Prop['BottomMargin'] := 50;
我动态设置自定义纸张大小,上面代码是起作用的,你参考一下看
 
上面的代码其实都是正确的,其实原因是出现在没有选择虚的打印,所以上面的代码功能将失效。
在报表里:File -> Report options -> General -> Virtual printer 设置后就OK了。
[red]怎么在程序里设置这个参数(选择虚的打印机)?[/red]
 
应该没有问题,我都用了好久。
你换个打印机试一试,可能是打印机的问题。
 
接受答案了.
 
后退
顶部