主题:[原创]如何打印PictureBox里面的内容
jusuyu
[专家分:180] 发布于 2007-09-23 12:25:00
窗体上有个图片框(picturebox),图片框中包括 标签和表格。
请问我能直接将整个图片框打印出来吗?
如果可以,要怎么实现呢?
我写了几种方法都打印不出来,打出来的纸上都是空白的。
谢谢各位。
最后更新于:2007-09-24 13:21:00
回复列表 (共8个回复)
沙发
jusuyu [专家分:180] 发布于 2007-09-23 20:29:00
是不是无法直接打印啊,
谁指点一下呀,谢谢!!!
板凳
FieldMAX [专家分:12740] 发布于 2007-09-24 10:19:00
Printer.PaintPicture
同Picture.PaintPicture
用法:Printer.PaintPicture Picture1.Image, X, Y, Width, Height
具体看MSDN上的用法
附:http://www.programfan.com/club/post-207252.html
3 楼
jusuyu [专家分:180] 发布于 2007-09-24 13:15:00
Printer.PaintPicture Picture1.Image, X, Y, Width, Height
这句话中的Picture1.Image是说,图片框中必须为Image是吗?
可是我的图片框中是各种控件啊,因为还要调用数据库中的数据。
所以我安装你给的方法直接打印,还是空白的。
是不是我要把各种控件转成Image啊。。。
4 楼
jusuyu [专家分:180] 发布于 2007-09-24 13:23:00
我添加了我要打印的这个图片框的内容(附件),
需要打印的是图片框中的内容。
但是都是控件形式,而不是Image,
所以,打印的时候就没有内容?
5 楼
FieldMAX [专家分:12740] 发布于 2007-09-25 09:32:00
http://www.fieldmax.cn/billprint.rar
你要的是票据打印范畴,我正在编写这个个类型的通用模块,但是还没有完成,上面的是源程序,有50%没有编写,你可以根据这个思路来做
6 楼
hpygzhx520 [专家分:1580] 发布于 2007-09-25 12:59:00
Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Private Sub Command1_Click()
BitBlt Picture2.hDC, 0, 0, Picture2.Width / 15, Picture2.Height / 15, Picture1.hDC, 0, 0, vbSrcCopy
End Sub
假设你的内容在Picture1,然后打印Picture2.image
7 楼
plxlgs [专家分:0] 发布于 2009-03-28 20:09:00
看一下窗体的属性设计
8 楼
rppd [专家分:0] 发布于 2009-03-29 13:02:00
用Printer可以把线条先发顺到打印机,然后把每一个控件中的内容发顺到打印机!这种方法可以实现,不过是特别麻烦!得写好多好多的代码!
我来回复