vb currentx currenty 我有三个文本框

来源:百度知道 编辑:UC知道 时间:2024/05/26 20:20:34
我是新手,请教诸位,请不吝指教,
需要在打印纸上打印出,第一文本框的位置4.2厘米,2.7厘米第二个2.6厘米,5.4厘米,第三个13.6厘米,5.4厘米,请帮忙做一下,急啊!
最好能教我怎样转换,只需要精确定位就行.
就是邮局汇款单,上面的格式已经固定,只要上面打字就行了,我这儿有类似的代码 我不太明白,代码如下:
Dim a As Integer
Dim b As Integer
a = 10
b = 10
Printer.Height = 10000 '设置打印纸张高度
Printer.Width =12000 '设置打印纸张宽度
Printer.FontSize = 25 '设置打印字体大小
Printer.CurrentX = 530 + a
Printer.CurrentY = 150 + b
Printer.CurrentX = 2000 + a
Printer.CurrentY = 3100 + b
Printer.Print Text1.Text '打印收款人姓名
Printer.CurrentX = 2000 + a
Printer.CurrentY = 3800 + b
Printer.Print Text9.Text 打印汇款人地址
为什么currentx=530+a,currenty=150+b
而不是任意一个数如240+a 210+b
如何从currentx=530+a currenty150+b
得到 Printer.CurrentX = 2000 + a
Printer.Curr

Printer.CurrentX 和Printer.CurrentY 应该是打印页面上的直角坐标系的坐标值(X,Y)。打印页面的坐标的原点在页面的左上角。(X,Y)就是从左上角向右移动X个单位,再向下移动Y个单位,所到达的那个位置。

Text1.Text 和Text9.Text 就是分别取出收款人姓名和汇款人地址。

为什么不能是任意一个数呢?当然可以是任意一个数了,只是你要求那个文本输入框Text1的文字出现在那个位置(2000 + a ,3100 + b)。

我个人觉得以下代码是多余。
“Printer.CurrentX = 530 + a
Printer.CurrentY = 150 + b
”因为之后程序中没有去打印什么,就又一次调用以下代码把打印的位置给改变了。
“Printer.CurrentX = 2000 + a
Printer.CurrentY = 3100 + b ”
我想可能是编程者的疏忽,或原本想打印后又取消了,这个具体的原因还得问问编程者了。