以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]专业报表宽高设置与预览不一致  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=40301)

--  作者:hzcaqjf
--  发布时间:2013/9/14 15:45:00
--  [求助]专业报表宽高设置与预览不一致

代码1:

Dim doc As New PrintDoc() \'定义一个报表

doc.PageSetting.Width = 210 \'纸张宽度

doc.PageSetting.Height = 297 \'纸张高度

Dim rt As New prt.RenderText \'定义一个文本对象

rt.Text = "Hello Foxtable ........" \'设置文本对象的内容

doc.Body.Children.Add(rt)

doc.PageSetting.Landscape = False \'纵向打印

doc.Preview() \'预览报表

代码2:

Dim doc As New PrintDoc() \'定义一个报表

doc.PageSetting.Width = 297 \'纸张宽度

doc.PageSetting.Height = 210 \'纸张高度

Dim rt As New prt.RenderText \'定义一个文本对象

rt.Text = "Hello Foxtable ........" \'设置文本对象的内容

doc.Body.Children.Add(rt)

doc.PageSetting.Landscape = False \'纵向打印

doc.Preview() \'预览报表

求解:代码2预览报表的宽度仍为210,高度仍为297,与代码1相同,如下图:

 


--  作者:Bin
--  发布时间:2013/9/14 15:49:00
--  
Dim doc As New PrintDoc() \'定义一个报表
doc.PageSetting.Width = 297 \'纸张宽度
doc.PageSetting.Height = 210 \'纸张高度
Dim rt As New prt.RenderText \'定义一个文本对象
rt.Text = "Hello Foxtable ........" \'设置文本对象的内容
doc.Body.Children.Add(rt)
\'doc.PageSetting.Landscape = False \'纵向打印
doc.Preview() \'预览报表

--  作者:hzcaqjf
--  发布时间:2013/9/14 17:04:00
--  
代码2中取消这行代码:
doc.PageSetting.Landscape = False \'纵向打印
确实能得到预想的效果.但不知其中缘由.
谢谢!


--  作者:Bin
--  发布时间:2013/9/14 17:13:00
--  
因为你设置了纵向打印他就只能设置宽度了

doc.PageSetting.Width = 297 \'纸张宽度
doc.PageSetting.Height = 210 \'纸张高度

取最小值 那个小 页面的宽度就是哪个.