注册 登录
编程论坛 VB6论坛

求教 打印数据库中选中的记录

我爱学习编程 发布于 2021-02-07 16:11, 2074 次点击
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录
9 回复
#2
cwa99582021-02-08 11:01
把数据读出来,发送到打印机对象,printer.print
#3
我爱学习编程2021-02-08 18:42
回复 2楼 cwa9958
能具体一点吗     劳烦写段代码  演示下  
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录
#4
yuma2021-02-08 18:56
下面的代码是在默认打印机上打印几行文字:

Printer.Print "第1行文字:哈哈哈哈"
Printer.Print "第2行文字:呵呵呵呵"
Printer.Print "第3行文字:嘿嘿嘿嘿"
Printer.EndDoc



下面是在打印机上输出一张图片:

Printer.PaintPicture LoadPicture("图片文件路径"), 0, 0
Printer.EndDoc



其他打印命令可自行参考VB在窗体上的各种文字和图形输出命令(比如画线Line,画圆Circle等等),也就是说,打印机的纸张可以完全视同为屏幕上的窗体。
#5
我爱学习编程2021-02-08 22:14
回复 4楼 yuma
我的报告 复杂   这样不行  还是不理解如何 选择打印么      不过还是谢谢  
#6
cwa99582021-02-14 17:45
打印机是系统默认的。
也可以自己选择打印机,但是放假期间电脑上没有vb
等上班后可以给你个打印例子

[此贴子已经被作者于2021-2-14 17:47编辑过]

#7
风吹过b2021-02-15 15:52
你理解 Printer 为系统内置一个类似于 图片框的控件,然后你可以像 在图片框中画图的样子一样操作它。把你的报表画到图片框里是怎么样的操作,那么打印也就是基本类型的操作。

#8
cwa99582021-02-17 13:44
在窗体上放置一个listbox,一个命令按钮。
下面的代码选择vb需要打印的打印机。
程序代码:
Private Sub Command1_Click()
    '设置打印机
    If List1.ListIndex >= 0 Then Set Printer = Printers(List1.ListIndex)
    Unload Me
   
End Sub

Private Sub Form_Activate()
'显示打印机列表
    Dim X As Printer
    For Each X In Printers
        List1.AddItem X.DeviceName
        If Printer.DeviceName = X.DeviceName Then List1.ListIndex = i
        i = i + 1
    Next

End Sub

#9
cwa99582021-02-17 14:00
报表打印例子:
首先要读出数据库里的数据。
程序代码:
Public Sub Dayin()

    Printer.Font.Size = 14   '设置字体大小,还可以设置字体
    Printer.Print Spc(20);  "报表标题"
   
    Printer.Font.Size = 11
    Printer.Print
    Printer.Print Spc(15); "姓名:"; Tab(28); 数据1;"  年龄:";数据2  
    Printer.Print Spc(15); "客户名称:"; Tab(28); 数据3   
    Printer.Print Spc(15); "日    期:"; Tab(28); 数据4   
    Printer.Print Spc(15); "数据:"; Tab(28); 数据5
   
    Printer.EndDoc  '开始打印
End Sub


具体数据,格式慢慢调整,Spc() 空格,Tab() 打印位置
#10
dasdaa2021-03-02 10:54
学习了!!
1