将打印的窗体保存下来,里面包含数据(有表格)和图片,打印的窗体高度很大,有不可见区域。用API函数GetWindowDC和BitBlt却只能将可见区域的内容保存为图片。
dc = GetWindowDC(Me.hwnd)
Call BitBlt(Picture1.hDC, x, y, Me.Width, Me.Height, dc, 0, 0, SRCCOPY)
SavePicture Picture1.Image, "D:\1.bmp"
请问各位怎么解决呀,还有没有什么更好的方法呀?
dc = GetWindowDC(Me.hwnd)
Call BitBlt(Picture1.hDC, x, y, Me.Width, Me.Height, dc, 0, 0, SRCCOPY)
SavePicture Picture1.Image, "D:\1.bmp"
请问各位怎么解决呀,还有没有什么更好的方法呀?
http://support.microsoft.com/kb/84066
Private Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Private Declare Function PrintWindow Lib "user32" (ByVal SrcHwnd As Long, ByVal DesHDC As Long, ByVal uFlag As Long) As Long
Private Sub Command1_Click()
Dim dc As Long
dc = GetWindow(Me.hwnd, GW_OWNER)
Call PrintWindow(dc, Picture1.hDC, 0)‘为1时也是,只是不是全黑
DoEvents
End Sub
看msdn吧要打印自身那个代码照搬就可以了
看msdn吧要打印自身那个代码照搬就可以了