Private Sub CaptureWindow(ByVal hSRC As Long, ByVal szName As String, Optional ByVal OnlyClient As Boolean = True)
Dim r As RECT
If OnlyClient Then
GetClientRect hSRC, r
Else
GetWindowRect hSRC, r
End If
CaptureWindowRect hSRC, szName, 0, 0, r.Right - r.Left, r.Bottom - r.Top
End SubPrivate Sub CaptureWindowRect(ByVal hSRC As Long, ByVal szName As String, ByVal x As Long, ByVal y As Long, ByVal w As Long, ByVal h As Long)
picDEST.ScaleMode = 3
picDEST.Parent.ScaleMode = 3
picDEST.AutoRedraw = True picDEST.Width = w
picDEST.Height = h
Dim hSRCDC As Long
hSRCDC = GetDC(hSRC)
BitBlt picDEST.hdc, 0, 0, w, h, hSRCDC, x, y, vbSrcCopy
ReleaseDC hSRC, hSRCDC
Set imgPreview.Picture = picDEST.Image
On Error GoTo InvDirName
SavePicture picDEST.Image, szName
Exit Sub
InvDirName:
MsgBox "无效目录或文件名!无法保存抓图!", vbCritical, "抓图"
End Sub
Dim r As RECT
If OnlyClient Then
GetClientRect hSRC, r
Else
GetWindowRect hSRC, r
End If
CaptureWindowRect hSRC, szName, 0, 0, r.Right - r.Left, r.Bottom - r.Top
End SubPrivate Sub CaptureWindowRect(ByVal hSRC As Long, ByVal szName As String, ByVal x As Long, ByVal y As Long, ByVal w As Long, ByVal h As Long)
picDEST.ScaleMode = 3
picDEST.Parent.ScaleMode = 3
picDEST.AutoRedraw = True picDEST.Width = w
picDEST.Height = h
Dim hSRCDC As Long
hSRCDC = GetDC(hSRC)
BitBlt picDEST.hdc, 0, 0, w, h, hSRCDC, x, y, vbSrcCopy
ReleaseDC hSRC, hSRCDC
Set imgPreview.Picture = picDEST.Image
On Error GoTo InvDirName
SavePicture picDEST.Image, szName
Exit Sub
InvDirName:
MsgBox "无效目录或文件名!无法保存抓图!", vbCritical, "抓图"
End Sub
解决方案 »
- 哪有VB控件下载啊
- 求牛人帮忙简化代码,加快执行速度!
- lefb的问题
- 创建控件数组问题 !
- 关于unload得问题
- 数据库压缩问题
- Webbrowser控件:(1)NewWindow2(ppDisp As Object, Cancel As Boolean)的ppDisp怎么用?(2)Web1控件运行时怎么让它不可见?
- 变量 TO 字段 的问题,解决有分!
- 求救 急!
- 一个关于Textbox的小问题
- 同志们我在网上好不容易下了.net !!!,是.iso格式用,isobuster10打开后也解压了可一安装提示找光盘,,???????谢谢兄弟们,,
- vb高手!!!vb调用PowerPoint中, pptapp.Visible = False问题 ??
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function GetClientRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As LongPrivate Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type