数据库中的数据打印出来吗?
创新互联公司专注于企业全网整合营销推广、网站重做改版、肥东网站定制设计、自适应品牌网站建设、H5响应式网站、成都做商城网站、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为肥东等各大城市提供网站开发制作服务。
给你一个思路,首先,你要做的是读取数据库记录,并把它们保存起来。当然,可以是保存在控件上,也可以保存在变量里。呵呵,当然也可以读一条记录,打印一次。不过这可能有点那样……。
读取出来以后,你还需要进行数据的排版,比如你需要打印成什么样式,纸张类型等。
做好了这些,你就可以通过几种方式来打印数据了。
当然,用控件打印是很简单的,因为很多控件都支持print方法。比如窗体的print方法。
思考是学习的唯一途径。
我帮你把最后一部分的语句顺序调换一下。你试一试
sub button1_click() '---执行打印
Dim pd As PrintDocument = New PrintDocument
pd.PrinterSettings = PrintDialog1.PrinterSettings
If _PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
for i=0 to 1 '这样可以两次截图
CaptureScreen() '--执行前面自定义函数截图
AddHandler pd.PrintPage, AddressOf Document_PrintPage
pd.Print()
Threading.Thread.sleep(100) ‘ 再加上一个间隔
next
end sub
比如:
Private Sub Document_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)
e.Graphics.DrawString(str0, New Font("Arial", 14, FontStyle.Regular), Brushes.Black, 50, 50)
e.Graphics.DrawString(A1, New Font("Arial", 10, FontStyle.Regular), Brushes.Black,50, 100)
e.Graphics.DrawString(A2, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 300,100)
e.Graphics.DrawString(A3, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 800,100)
也就是分次用不同坐标和不同的字体来打印各变量。画线用:
e.Graphics.DrawLine(BlackPen, x1, y1, x2, y2)。
具体坐标数值自己用尺量出,再换算。
一般情况下先用EXCEL做好一个样表文件,设定好打印区域和样式,需要填内容的时候,先程序复制一个样表文件,然后调用API打开表格填写内容并打印,如果想用API来实现调整模板和打印预览,可能比较困难,而且很抽象,个人觉得费时费力效果还不一定理想