以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  疯啦,报表打出来都是横向的,不管是true还是false,???  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=41931)

--  作者:riancel
--  发布时间:2013/10/30 15:28:00
--  疯啦,报表打出来都是横向的,不管是true还是false,???

那个sflist 收费中“窗口”中的的三联打印,出来都是横向的

纸张都是设好的,宽210,高140,纵向,看看文件,测试一下

谢谢

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sql add.zip

 


图片点击可在新窗口打开查看此主题相关图片如下:bbb.jpg
图片点击可在新窗口打开查看

 

报表的代码是这样的:

If Tables( "sflist" ).current ( "print" ) <> "已打印" And Tables( "sflist" ).current ( "sname" ) <> Nothing Then
Dim doc As New PrintDoc \'定义一个报表
doc.PageSetting.Width = 210 \'纸张宽度为210毫米
doc.PageSetting.Height = 140 \'纸张高度为140毫米
doc.AutoRotate = False \'禁止自动旋转打印内容这个地方我false也试过
doc.PageSetting.Landscape = True \'横向打印这个地方我false也试过
Doc.PageSetting.LeftMargin = 10 \'设置左边距
Doc.PageSetting.RightMargin = 10 \'设置右边距
Doc.PageSetting.TopMargin = 20 \'设置上边距
Doc.PageSetting.BottomMargin = 2 \'设置下边距
Dim rx As prt.RenderText \'定义一个文本对象
Dim x As Integer = 0 \'定义水平偏移参数
Dim y As Integer = 0 \'定义垂直偏移参数
Dim Sum As Integer
Dim i As Integer
For i = 1 To 3
Dim CurRow As Row = Tables("sflist").Current

\'---------------------------------------------打印姓名
    rx = New prt.RenderText
    rx.Text = CurRow("sname")
    rx.X = 10 + x  \'设置坐标的时候,注意加上偏移参数
    rx.Y = 10 + y
    doc.body.Children.Add(rx)
\'---------------------------------------------打印学号
    rx = New prt.RenderText
    rx.Text = CurRow("sid")
    rx.X = 30 + x  \'设置坐标的时候,注意加上偏移参数
    rx.Y = 10 + y
    doc.body.Children.Add(rx)
\'---------------------------------------------打印金额
    rx = New prt.RenderText
    rx.Text = CurRow("money")
    rx.X = 20 + x  \'设置坐标的时候,注意加上偏移参数
    rx.Y = 50 + y
    doc.body.Children.Add(rx)
\'---------------------------------------------打印大写金额
    rx = New prt.RenderText
    rx.Text = CUmoney(CurRow("money"))
    rx.X = 20 + x  \'设置坐标的时候,注意加上偏移参数
    rx.Y = 60 + y
    doc.body.Children.Add(rx)
\'---------------------------------------------打印收款人额
    rx = New prt.RenderText
    rx.Text = CurRow("sfr")
    rx.X = 40 + x  \'设置坐标的时候,注意加上偏移参数
    rx.Y = 70 + y
    doc.body.Children.Add(rx)
\'---------------------------------------------打印收费日期
    rx = New prt.RenderText
    rx.Text = CurRow("sdate")
    rx.X = 20 + x  \'设置坐标的时候,注意加上偏移参数
    rx.Y = 80 + y
    doc.body.Children.Add(rx)
\'生成三个列
x = x + 50
Next

Doc.Preview() \'预览报表
Tables("sflist").Current.Save()
With Tables("sflist").Current \'引用当前行
    If .IsNull("sid") = False Then \'如果已经输入结账日期
        .Locked = True \'那么锁定此行
Tables("sflist").current ( "print" ) = "已打印"
    End If
End With
Tables("sflist").Addnew
Else
MessageBox.Show( "本张票据已打印过,或学生姓名有误!" ,"警告",MessageBoxButtons.ok, MessageBoxIcon.warning)
End If
e.Form.Controls("textinput").Select()


 

[此贴子已经被作者于2013-10-30 15:32:59编辑过]

--  作者:Bin
--  发布时间:2013/10/30 15:35:00
--  
宽210,高140

纸张当然是看起来横向的啊? 

--  作者:riancel
--  发布时间:2013/10/30 15:39:00
--  

打印的时候,它总是将字睡起打印出来的,好像是被“旋转”了一样


--  作者:riancel
--  发布时间:2013/10/30 15:41:00
--  

对,看起来是横向的纸,但这种样子是“竖向”的,将纸如看倒的方向装就对头了哈,但是这样装来字就像是被“旋转了”一样,字是睡起的

改了自动旋转,和横向两个逻辑值都不起作用。


--  作者:狐狸爸爸
--  发布时间:2013/10/30 15:47:00
--  
Landscape 已经没有意义了,另直接打印,不要预览
--  作者:Bin
--  发布时间:2013/10/30 15:48:00
--  
不理解你的问题到底是什么


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20131030154757.png
图片点击可在新窗口打开查看