vb.net窗口截图保存 vb如何实现截屏

VB中如何将图片框中内容截图并保存到指定文件夹

1按Alt+print screen sysrq,截图。可以试一下,在图片中右击鼠标,发现粘贴是灰色的,所以截图的图片一开始是不能够直接放进文件夹的。

潢川网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、自适应网站建设等网站项目制作,到程序开发,运营维护。创新互联于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联

2打开电脑的开始界面,如图,点击下面的箭头。

3可以看到这里有很多软件,找到画图,其实桌面上的软件这里都有,可以直接在这里找,也不用放在桌面上占用内存。

4点击进去后,看到左上角有一个粘贴,点击,好了,这时你的图片已经过来了。

5粘贴旁边上面有一个文件,点击,选择另存为,你可以保存在你想保存的位置。这时你的截屏图片就已经是文件夹形式了。

6还有别的图片需要保存,可以点击选择,全选,然后删除,继续粘贴,其他图片,在图片里,你可以右击编辑,在图片上加一些东西,这些也是在画图中完成的。

vb 如何把窗口内容保存为图片

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

Const theForm = 1

Const theScreen = 0

Private Sub Command1_Click()

Picture1.Visible = False

Picture1.Move 0, 0, Me.Width, Me.Height

Call keybd_event(vbKeySnapshot, theForm, 0, 0) '截取活动的本窗体,若theForm改成theScreen则Copy整个Screen

DoEvents

Picture1.Picture = Clipboard.GetData(vbCFBitmap) 'Picture1.Picture得到剪切板的内容(截取的本窗体)

Clipboard.Clear

PhotoName = "\VB截图.Bmp"

PhotoName1 = App.Path  PhotoName

SavePicture Picture1.Image, PhotoName1

End Sub

vb.net 截屏 ,获取活动窗口

'模块中

Declare Function GetDC Lib "user32" (ByVal hwnd As Long) _

As Long

Public Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long

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

'form1中

Private Sub Command1_Click()

Dim hDCtmp As Long, picWidth As Double, picHeight As Double

Dim x As Double

Dim y As Double

x = Val(Text2.Text)

y = Val(Text3.Text)

picWidth = Val(Text3.Text)

picHeight = Val(Text4.Text)

hDCtmp = GetDC(0)

BitBlt Picture1.hdc, 0, 0, picWidth, picHeight, hDCtmp, x, y, vbSrcCopy

ReleaseDC 0, hDCtmp

End Sub

目的: 将屏幕按照指定坐标和大小进行截取成图,在picture1显示

问题: 大小是相同了,为什么截取的坐标不对,只是屏幕上的左上

相信大家都用过QQ截图功能。不过很多人并没有真正掌握好它的用法。将QQ截图与其它截屏和制图软件配合使用,会有意想不到的效果。

获取颜色的RGB值

我们在编辑图片或网页的时候,经常需要获取某种颜色的“RGB值”,所以很多人都安装了第三方的颜色吸取工具。其时用QQ截图键即可获取屏幕上任意颜色的RGB值。

当按下“Ctrl+Shift+A”弹出“截图”提示框时,提示框中的“当前像素RGB”即为当前鼠标屏幕位置的颜色RGB值,将鼠标移动到你想查看的屏幕颜色上即可获得相应的RGB值(如图1)。

图1精确截取图片大小

有时我们对要使用的截图尺寸有严格要求,比如论坛签名或QQ头像等。用QQ截图键可以按尺寸精确截取,一步到位无需再进行后期裁剪了。

按下QQ截图键,按住鼠标不放选取截取范围时,在鼠标上方会有一个信息框显示当前范围的详细信息,其中“矩形大小”就是以像素来表示的图片的尺寸大小,括号内的数字分别表示的是长和高(如图2)。松开鼠标调整截图框时,对照“矩形大小”就可以按需要的尺寸来精确截图范围,然后用鼠标点住截图框将截图框拖到要截取的图片上,双击即可获得所需尺寸的图片了。

图2图片拼贴好帮手

大部分的截图软件一次只能截取一张图片,当要截取多张图片并进行拼贴组合时,就需要一张一张截取全部保存后再进行拼贴操作,非常麻烦。

我们知道用QQ截图键截取的图片可以在任一个可以粘贴图片的程序中使用,这样只需用截图软件进行一次截图操作,剩下的图片用QQ截图键来截取,然后依次粘贴到截图软件的窗口中即可快速进行拼贴操作了,是不是很方便啊。

小提示:QQ截图键无需打开聊天窗口即可使用,截取的图片在任一可粘贴图片的程序窗口中如画图、Word等,使用“粘贴”命令即可使用

vb.net 如何保存当前页为图片

提供两个思路

用printscreen,将其保存到文件,再调用outlook发出去,但是您说的超出一屏,就麻烦了;

以下代码保存为文件,引用自MSDN,由于我的SD版本不支持我的outlook,所以暂时无法给发送邮件的例子,请参考吧!

system.Windows.Forms.SendKeys.Send("%{PRTSC}")

       If Not System.Windows.Forms.Clipboard.GetDataObject() Is Nothing Then

      Dim oDataObj As IDataObject = System.Windows.Forms.Clipboard.GetDataObject()

      If oDataObj.GetDataPresent(System.Windows.Forms.DataFormats.Bitmap) Then

          Dim oImgObj As System.Drawing.Image = oDataObj.GetData(DataFormats.Bitmap, True)

          'To Save as Bitmap

          oImgObj.Save("F:\Test.bmp", System.Drawing.Imaging.ImageFormat.Bmp)

          'To Save as Jpeg

          oImgObj.Save("D:\Test.jpeg", System.Drawing.Imaging.ImageFormat.Jpeg)

          'To Save as Gif

          oImgObj.Save("d:\Test.gif", System.Drawing.Imaging.ImageFormat.Gif)

      End If

  End If

2.另外出出报表,再调用outlook发出去,只给出数据性报表,而不一定是窗体本身;

vb.net 2008 如何将指定的窗体截图并保存

INTOUCH自带的就有,打印屏幕的命令

自己写个时间条件运行那命令就可以了

PRINTSCREEN这个命令 具体怎么用 看下帮助

希望我的回答对你有所帮助

如有其他问题,可以继续追问,您的采纳是我前进的动力!

如何用vb截屏并保存到指定文件夹

一个非常简单的方法,非模拟按键。 只用一个timer控件,和一个按扭就可以。

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 Declare Function GetActiveWindow Lib "user32" () As Long

Dim a

Private Sub Command1_Click()

Timer1.Enabled = True

End Sub

Private Sub Form_Load()

On Error Resume Next

MkDir "c:\zt" '建文件夹

Me.AutoRedraw = True

End Sub

Private Sub Timer1_Timer()

a = a + 1

If a = 3 Then '三秒后开始抓屏

Me.Hide

BitBlt Me.hDC, 0, 0, Screen.Width, Screen.Height, _

GetDC(GetActiveWindow), 0, 0, vbSrcCopy '抓屏

Me.Show

Dim sFile As String

sFile = "C:\zt\" Format(Now, "yyyymmddhhmmss") ".BMP"

SavePicture Me.Image, sFile '保存Me.hDC

Timer1.Enabled = False

End If

End Sub


分享文章:vb.net窗口截图保存 vb如何实现截屏
URL标题:http://azwzsj.com/article/dodsids.html