13 个解决方案
#1
你是用什么打印的
#2
我是用printer
#3
补上空格,如下面的方法
如果要让这个数字占10个字符的位置
strnum=space(10-len(cstr(num))) & cstr(num)
如果要让这个数字占10个字符的位置
strnum=space(10-len(cstr(num))) & cstr(num)
#4
当然我没有检查是不是大于10个字节,你可以在程序上加上
#5
我用的就是这种方法,还是对不齐呀。
#6
…… Format$(Num,"@@@@@@@@@@")
#7
是不是你里面有中文呀
#8
我在前面也检查过了字符长度了,就是对不齐。我在前面补上6个空格,打印出来只有两个,这是怎么回事?
#9
中文当然有。用Format$(num,"@@@@@@@@@@")也不行,多少个@算一个字符呀。我在VB里面有时是四个算一个空格,有时是5个算一个空格。没法用。我的VB是繁体
#10
用Tab试试
str=chr(9) & num
str=chr(9) & num
#11
Dim tmpX As Single
Dim tmpStr As String
With Printer
.CurrentX = tmpX - .TextWidth(tmpStr)
Printer.Print tmpStr
End With
其中tmpx是你要打印的对齐的坐标
Dim tmpStr As String
With Printer
.CurrentX = tmpX - .TextWidth(tmpStr)
Printer.Print tmpStr
End With
其中tmpx是你要打印的对齐的坐标
#12
先要判断你中文的字数
Public Function longer(ByVal str As String) As Integer
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To Len(str)
If Asc(Mid(str, i, 1)) < 0 Then j = j + 1
Next i
longer = j
End Function
然后根据中文补空格,因为一个中文等于两个英文字母
Public Function longer(ByVal str As String) As Integer
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To Len(str)
If Asc(Mid(str, i, 1)) < 0 Then j = j + 1
Next i
longer = j
End Function
然后根据中文补空格,因为一个中文等于两个英文字母
#13
一般还是用坐标定一下才比较准,空格很难对齐的。
#1
你是用什么打印的
#2
我是用printer
#3
补上空格,如下面的方法
如果要让这个数字占10个字符的位置
strnum=space(10-len(cstr(num))) & cstr(num)
如果要让这个数字占10个字符的位置
strnum=space(10-len(cstr(num))) & cstr(num)
#4
当然我没有检查是不是大于10个字节,你可以在程序上加上
#5
我用的就是这种方法,还是对不齐呀。
#6
…… Format$(Num,"@@@@@@@@@@")
#7
是不是你里面有中文呀
#8
我在前面也检查过了字符长度了,就是对不齐。我在前面补上6个空格,打印出来只有两个,这是怎么回事?
#9
中文当然有。用Format$(num,"@@@@@@@@@@")也不行,多少个@算一个字符呀。我在VB里面有时是四个算一个空格,有时是5个算一个空格。没法用。我的VB是繁体
#10
用Tab试试
str=chr(9) & num
str=chr(9) & num
#11
Dim tmpX As Single
Dim tmpStr As String
With Printer
.CurrentX = tmpX - .TextWidth(tmpStr)
Printer.Print tmpStr
End With
其中tmpx是你要打印的对齐的坐标
Dim tmpStr As String
With Printer
.CurrentX = tmpX - .TextWidth(tmpStr)
Printer.Print tmpStr
End With
其中tmpx是你要打印的对齐的坐标
#12
先要判断你中文的字数
Public Function longer(ByVal str As String) As Integer
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To Len(str)
If Asc(Mid(str, i, 1)) < 0 Then j = j + 1
Next i
longer = j
End Function
然后根据中文补空格,因为一个中文等于两个英文字母
Public Function longer(ByVal str As String) As Integer
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To Len(str)
If Asc(Mid(str, i, 1)) < 0 Then j = j + 1
Next i
longer = j
End Function
然后根据中文补空格,因为一个中文等于两个英文字母
#13
一般还是用坐标定一下才比较准,空格很难对齐的。