如何截取屏幕画面?

QQRN 2000-12-29 12:31:00
谢谢谢谢!!!
...全文
1326 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
NiceFeather 2000-12-29
  • 打赏
  • 举报
回复
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 Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, lpRect As Long, ByVal bErase As Long) As Long
Dim dd As Long
'将picture1的AutoRedraw改为true

Private Sub Command1_Click()
dd = GetDC(0)
BitBlt Picture1.hDC, 0, 0, Picture1.Width, Picture1.Height, dd, 0, 0, &HCC0020
InvalidateRect Picture1.hwnd, 0&, True
End Sub
BillLiao 2000-12-29
  • 打赏
  • 举报
回复
hDC = GetDC(0)
sx = Screen.Width \ Screen.TwipsPerPixelX
sy = Screen.Height \ Screen.TwipsPerPixelY
BitBlt picCopy.hDC,0,0,sx,sy,hDC,0,0,vbSrcCopy
ReleaseDC 0,hDC

可以再补充一些内容,让效果更好。
yiwei 2000-12-29
  • 打赏
  • 举报
回复
用GETDC()获得桌面的HDC,你就可以为所欲为了。
kosisiyo 2000-12-29
  • 打赏
  • 举报
回复
关注!
QQRN 2000-12-29
  • 打赏
  • 举报
回复
仔细看了一下,好象是我搞错了,不过我还是不会通过在程序中模拟键盘动作来截取屏幕画面,能否说仔细点,比如相关的API函数。
QQRN 2000-12-29
  • 打赏
  • 举报
回复
O!MY GOD!
看来我没说清楚,SORRY,我的意思是如何用VB程序截取屏幕画面。
各位有知道的请告诉小弟一声。
weedxg 2000-12-29
  • 打赏
  • 举报
回复
Windows可以通过按下PrintScreen键来截取整个屏幕,按下Alt+printScreen来截取当前窗口,因此可以通过在程序中模拟键盘动作来接图。使用API函数就行了。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧