
然后
Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
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 Form_Load()
Me.Hide
Me.AutoRedraw = True
BitBlt Me.hDC, 0, 0, Screen.Width, Screen.Height, GetDC(0), 0, 0, vbSrcCopy
sFile$ = "C:\" &Format(Now, "mmddhhmmss") &".BMP"
SavePicture Me.Image, sFile
MsgBox "当前屏幕图像已经保存到" &sFile, 64
End
End Sub;保存截图
方案一.使用Declare的方式,声明所有需要用到的GDI函数,在PictureBox的DC上完成绘图
方案二.
VB本身也提供有绘图函数,直接用之即可
绘图时使某一个颜色值透明 此示例是过滤纯白颜色Private Declare Function GdiTransparentBlt Lib "gdi32" (ByVal hdc1 As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal W1 As Long, ByVal H1 As Long, ByVal Hdc2 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal W2 As Long, ByVal H2 As Long, ByVal Color As Long) As Long
Private Sub Command1_Click()
GdiTransparentBlt Me.hDC, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight, _
Picture1.hDC, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight, RGB(255, 255, 255)
Me.Refresh
End Sub
Private Sub Form_Load()
Me.AutoRedraw = True
Me.ScaleMode = 3
Picture1.AutoRedraw = True
Picture1.ScaleMode = 3
End Sub
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)