Dim prt As Row = Tables("支piao_pconf").Current
Dim pyz As Integer = prt("偏移_左") '取左偏移的值....
Dim pys As Integer = prt("偏移_上") '取上偏移的值....
Dim doc As New PrintDoc '定义一个报表
Dim text As new prt.RenderText
Dim dycs As DataRow = DataTables("系统设置").find("列名 = '默认打印机'")'判断默认打印机
If dycs("列值") = "" Then
MessageBox.Show("未设置默认打印,请在稍后弹出的窗口中选择默认打印机","提示信息")
Forms("系统设置").open
Else
Doc.PrinterName= dycs("列值")
End If
Doc.PageSetting.LeftMargin=1
Doc.PageSetting.BottomMargin =1
Doc.PageSetting.TopMargin=1
Doc.PageSetting.LeftMargin =1
doc.PageSetting.Width = val(prt("长度")) '纸张宽度为100毫米
doc.PageSetting.Height = val(prt("宽度")) '纸张高度为120毫米
'------------------------------------------------
If prt("打印方向") = "横向" Then
Doc.PageSetting.Landscape = True '横向打印
ElseIf prt("打印方向") = "纵向" Then
Doc.PageSetting.Landscape = False '纵向打印
End If
'---------------------------------------------------
Dim y As New prt.RenderText '定义年
y.Text = CCDate(r("开piao日期")).SubString(0,4)
y.X = val(prt("正_年_X")) + pyz
y.y = val(prt("正_年_Y")) + pys
doc.body.Children.Add(y)
'-------------------------------------
...........
'-------------------------
Dim ytz As New prt.RenderText '用途左边
ytz.Text = r("用途")
ytz.X = val(prt("副_用途_X")) + pyz
ytz.y = 65
Doc.body.Children.Add(ytz)
'是否直接打印不预览
Dim cs As DataRow = DataTables("系统设置").find("列名 = '直接打印'")
If cs("列值")="是" Then
MessageBox.Show(cs("列值"))
Doc.Print()
Else
MessageBox.Show("NO" & cs("列值"))
Doc.Preview()
问题:如果cs("列值")="是" ,直接打印,,,此时打印出来的纸张是A4纸,上面定义的纸张大小不起作用...如果是预览的话是正常的,,请问问题出在哪里 呢?????