vb中用printer方式来打印datagrid内容怎么对齐?

我在vb6.0中用了datagrid加载了SQL2000的数据库。利用printer方式可以打印想要的内容,可是打印出来的不能对齐。有什么方法可以对齐的?这是我的代码:P... 我在vb6.0中用了datagrid加载了SQL2000的数据库。利用printer方式可以打印想要的内容,可是打印出来的不能对齐。有什么方法可以对齐的?
这是我的代码:
Private Sub image2_Click()
CommonDialog1.ShowPrinter
On Error GoTo ErrMsg
Dim i As Long, j As Long, k As Long, PrintString As String
fnt = 15: X = 2000: Y = 2500
Printer.CurrentX = 5000
Printer.CurrentY = 1000
Printer.FontSize = 20
Printer.FontBold = True
Printer.Print "库存信息表"
Printer.CurrentX = 1000
Printer.CurrentY = 2000
Printer.FontSize = 14
Printer.Print "货品编号 货品名称 货品数量 货品种类"
Printer.FontSize = 10
For i = 0 To DataGrid1.ApproxCount - 1
If k = DataGrid1.VisibleRows Then
DataGrid1.Scroll 0, DataGrid1.VisibleRows
k = 0
End If
For j = 0 To DataGrid1.Columns.Count - 1
PrintString = PrintString & _
DataGrid1.Columns(j).CellText(DataGrid1.RowBookmark(k)) & " "
Next
Printer.CurrentX = 1100
Printer.CurrentY = Y
Printer.Print PrintString
PrintString = ""
k = k + 1
Y = Y + 300
DoEvents
Next
Printer.EndDoc
ErrMsg:
If Err.Number <> 0 Then
MsgBox CStr(Err.Number) + Err.Description, vbOKOnly + vbCritical, "错误提示"
Exit Sub
End If
End Sub
这是虚拟打印机打印出来的效果
展开
 我来答
匿名用户
2013-06-15
展开全部
货品数量和货品种类用
Printer.CurrentX = X
Printer.CurrentY = Y
定位打印.
追问
能具体一点吗?
追答
For j = 0 To DataGrid1.Columns.Count - 1
PrintString = PrintString & _
DataGrid1.Columns(j).CellText(DataGrid1.RowBookmark(k)) & " "
Next
Printer.CurrentX = 1100
Printer.CurrentY = Y
Printer.Print PrintString

以上修改掉.换为下面的.

先打印 编号和名称,因为编号是固定长度的所以直接用空格可以分隔定位
PrintString =DataGrid1.Columns(0).CellText(DataGrid1.RowBookmark(k)) & " " & _
DataGrid1.Columns(1).CellText(DataGrid1.RowBookmark(k))
Printer.CurrentX = 1100
Printer.CurrentY = Y
Printer.Print PrintString

然后,打印货品数量
PrintString =DataGrid1.Columns(2).CellText(DataGrid1.RowBookmark(k))
Printer.CurrentX = 1500 '(X坐标,自己调整,对齐到货品数量)
Printer.Print PrintString

然后打印货品种类
PrintString =DataGrid1.Columns(2).CellText(DataGrid1.RowBookmark(k))

Printer.CurrentX = 2100 '(X坐标,自己调整,对齐到货品种类)
Printer.Print PrintString
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式