小弟想保存当前屏幕。
比如:在form上有个按钮。当我点击这个按钮的时候就系统就把当前窗口保存下来,然后自动弹出保存对话框,输入保存文件的名称和选择路径后点对话框上的“保存”按钮就可以把当前窗口以图像文件格式保存到选择的路径下。
请大虾务必指教阿。小弟先谢过大虾
比如:在form上有个按钮。当我点击这个按钮的时候就系统就把当前窗口保存下来,然后自动弹出保存对话框,输入保存文件的名称和选择路径后点对话框上的“保存”按钮就可以把当前窗口以图像文件格式保存到选择的路径下。
请大虾务必指教阿。小弟先谢过大虾
解决方案 »
- 求助:vb中在txt文件中print的问题
- 如何检测指定文件的版本号?用API,还是其他
- ■■■救命!!■■■运行时错误'5',无效的过程调用或参数
- vb 分辨率问题
- 我下了一个MSDN.net的是在一个文件夹下,共1.9G,请问怎样把它刻成3张盘,其中有一个文件夹Program Files大小为1.7G
- chice_wxg:前來領分
- 请教:如何绘制成绩分析的正态分布曲线?
- 如何获得windows2000 server的本地用户和组名字(vb)
- 用VB开发过网上购物系统的高手请进
- VB6 写出的 Sub 能够产生 As Any 这种写法吗
- VB中CoolBar控件??????????????????
- 请问 toolbar 怎么来调节宽度啊?请高手进来帮忙。毕业设计急死我了。谢谢哥哥姐姐!
ByVal hMem As Long) As LongPrivate Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, _
ByVal hObject As Long) As LongPrivate Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As LongPrivate 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 Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As LongPrivate Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hdc As Long, _
ByVal nWidth As Long, ByVal nHeight As Long) As LongPrivate Declare Function CloseClipboard Lib "user32" () As LongPrivate Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, _
ByVal lpDeviceName As String, ByVal lpOutput As String, lpInitData As Long) As LongPrivate Sub Command1_Click()'''抓图
Me.Visible = False
SourceDC = CreateDC("DISPLAY", 0, 0, 0)
DestDC = CreateCompatibleDC(SourceDC)
Bhandle = CreateCompatibleBitmap(SourceDC, 800, 600)
SelectObject DestDC, Bhandle
BitBlt DestDC, 0, 0, 800, 600, SourceDC, 0, 0, &HCC0020
Wnd = Screen.ActiveForm.hwnd
OpenClipboard Wnd
EmptyClipboard
SetClipboardData 2, Bhandle
CloseClipboard
DeleteDC DestDC
ReleaseDC Dhandle, SourceDC
Me.Picture = Clipboard.GetData()
Me.Visible = True
End SubPrivate Sub Command2_Click()
Me.Picture = Me.Image
'保存捕捉的图片
CommonDialog1.Filter = "BMP文件(*.bmp)|*.bmp|JPG文件(*.jpg)|*.jpg"
CommonDialog1.ShowSave
CommonDialog1.Flags = &H2 + &H4 + &H8
If CommonDialog1.FileName <> "" Then
SavePicture Me.Picture, CommonDialog1.FileName
End If
End Sub
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Command1_Click()
Call keybd_event(VK_SNAPSHOT, 0, 0, 0) ' 把应用窗口图象放到剪贴板,相当于按下了键盘上的 Alt+PrintScr
DoEvents
CommonDialog1.Filter = "位图文件(*.bmp)|*.bmp|"
CommonDialog1.ShowSave
If CommonDialog1.FileName <> "" Then
SavePicture Clipboard.GetData, CommonDialog1.FileName '保存捕捉的图片
Shell "C:\Program Files\Accessories\MSPAINT.EXE " & CommonDialog1.FileName, vbNormalFocus '用画图程序打开刚才保存的图片进行察看
End If
End Sub