回 帖 发 新 帖 刷新版面

主题:[原创]如何打印PictureBox里面的内容

窗体上有个图片框(picturebox),图片框中包括 标签和表格。
请问我能直接将整个图片框打印出来吗?
如果可以,要怎么实现呢?
我写了几种方法都打印不出来,打出来的纸上都是空白的。
谢谢各位。

回复列表 (共8个回复)

沙发

是不是无法直接打印啊,
谁指点一下呀,谢谢!!!

板凳

Printer.PaintPicture

同Picture.PaintPicture

用法:Printer.PaintPicture Picture1.Image, X, Y, Width, Height


具体看MSDN上的用法

附:http://www.programfan.com/club/post-207252.html

3 楼

Printer.PaintPicture Picture1.Image, X, Y, Width, Height
这句话中的Picture1.Image是说,图片框中必须为Image是吗?
可是我的图片框中是各种控件啊,因为还要调用数据库中的数据。
所以我安装你给的方法直接打印,还是空白的。
是不是我要把各种控件转成Image啊。。。

4 楼

我添加了我要打印的这个图片框的内容(附件),
需要打印的是图片框中的内容。
但是都是控件形式,而不是Image,
所以,打印的时候就没有内容?

5 楼

http://www.fieldmax.cn/billprint.rar

你要的是票据打印范畴,我正在编写这个个类型的通用模块,但是还没有完成,上面的是源程序,有50%没有编写,你可以根据这个思路来做

6 楼

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 楼

看一下窗体的属性设计

8 楼

用Printer可以把线条先发顺到打印机,然后把每一个控件中的内容发顺到打印机!这种方法可以实现,不过是特别麻烦!得写好多好多的代码!

我来回复

您尚未登录,请登录后再回复。点此登录或注册