vb对一个网页如新浪这样的进行截屏,如何做?

解决方案 »

  1.   

    http://www.ej38.com
      

  2.   

    真不懂怎么弄的,不过,好像有个控件可以直接 SaveAsBitmap .
      

  3.   

    以前有写过一段代码,但不是保存网页,不知能不能用
      Public Declare Function StretchBlt Lib "gdi32" (ByVal hdc 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 nSrcWidth As Long, _
                                                        ByVal nSrcHeight As Long, _
                                                        ByVal dwRop As Long) As Long
      Public Const SRCCOPY = &HCC0020
      'Public Const SRCCOPY = &H8800C6
      '-----------------------------------------------------------------------------------------Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)          '程序延迟用到这个API,然后             SavePicture Picture2.Image, .FileName
      

  4.   

    不是保存网页,就是相当于alt+prntScr的截屏功能,但是有的时候需要截取的是某个网页的中间的部分,不知道怎么控制网页让滚动条移动
      

  5.   

    不是。比如一个网页高度超过很长,我要把它的第二页的内容截下来保存为图片。
    相当于做了打开网页,然后pagedown,然后再alt+printScreen的操作
      

  6.   

    发送键盘命令 可以吗 sendkey
      

  7.   

    Public Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
    Public Declare Function SetPixel Lib "gdi32" Alias "SetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
    Public Declare Function GetDC Lib "user32" Alias "GetDC" (ByVal hwnd As Long) As LongSub PrtSc(ByVal x As Long, ByVal y As Long, ByVal w As Long, ByVal h As Long)
    Dim hdc As Long, x1 As Long, y1 As Long
    hdc = GetDC(0) 'hwnd为0时DC为屏幕DC
    For x1 = x To x + w '遍历每一列
       For y1 = y To y + h '遍历每一行
          SetPixel GetDC(Form1.hwnd), x1, y1, GetPixel(hdc, x1, y1)
       Next y1
    Next x1
    End Sub