怎么设置,使打印内容在打印纸的中间,请兄弟们帮忙?

crazyCSDNx 2003-09-29 09:42:49
我用printer.print打印几行字符串,如何设置才能使打印内容在打印纸的中间?
...全文
263 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kinlin 2003-10-04
  • 打赏
  • 举报
回复
Private Sub Form_Click ()
Dim HWidth, HHeight, I, Msg ' 声明变量。
On Error GoTo ErrorHandler ' 设置错误处理程序。
Msg = "This is printed on page"
For I = 1 To 2 ' 设置 2 个迭代。
HWidth = Printer.TextWidth(Msg) / 2 ' 取半宽。
HHeight = Printer.TextHeight(Msg) /2 ' 取半高。
Printer.CurrentX = Printer.ScaleWidth / 2 - HWidth
Printer.CurrentY = Printer.ScaleHeight / 2 - HHeight
Printer.Print Msg & Printer.Page & "." ' 打印。
Printer.NewPage ' 发送新页。
Next I
Printer.EndDoc ' 打印完毕。
Msg = "Two pages, each with a single, centered line of text, "
Msg = Msg & "have been sent to your printer."
MsgBox Msg ' 显示信息。
Exit Sub
ErrorHandler:
MsgBox "There was a problem printing to your printer."
Exit Sub
End Sub

haipingma 2003-09-30
  • 打赏
  • 举报
回复
cx = (Printer.ScaleWidth - ScaleWidth) / 2
cy = (Printer.ScaleHeight - ScaleHeight) / 2
Printer.CurrentX = cx + Controls(i).Left
Printer.CurrentY = cy + Controls(i).Top
felix 2003-09-30
  • 打赏
  • 举报
回复
Dim s As String
s = "abcd"
Printer.CurrentX = (Printer.ScaleWidth - Printer.TextWidth(s)) / 2
Printer.CurrentY = y
Printer.Print s

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧