请问:如何打印picturebox中的控件和线段

解决方案 »

  1.   

    Option ExplicitPrivate Const SRCCOPY = &HCC0020 ' (DWORD) dest = source
    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 LongPrivate Sub Command1_Click()
        BitBlt Picture2.hDC, 0, 0, ScaleX(Me.Width, vbTwips, vbPixels), ScaleY(Me.Height, vbTwips, vbPixels), Picture1.hDC, 0, 0, SRCCOPY '用此函数可以将多个图片合到一起,然后统一一次打印!!
      
        Printer.PaintPicture Picture1.Image, 0, 0
    End SubPrivate Sub Form_Load()
        With Picture2
            .AutoRedraw = True
            .Visible = False
            .Width = Picture1.Width
            .Height = Picture1.Height
        End With
    End Sub
      

  2.   

    printer.paintpicture picture1.image,0,0
      

  3.   

    Printer.Line (X1, Y1)-(X2, Y2) '打印一条线段Printer.PaintPicture  '在指定位置打印图片