Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Web Browserista tallentaminen

Tehy [23.12.2004 13:11:19]

#

Olen tehnyt oman pienen nettiselaimen web browser controllin avulla. Onko mitenkään mahdollista tallentaa selaimenin näyttämämä sivu kuvana? Haluan ottaa sivusta screenshotin...

NixDu [23.12.2004 13:23:30]

#

Jos oikein ymmärsin mitä meinasit niin eikai se ole ku ottaa screensshotti. "alt + Print Scrn" niin saat vain siitä päällä olevasta ikkunasta otettuu kuvan!

rndprogy [23.12.2004 13:25:27]

#

Ei mitään alttia tarvitse senkun painaa vain Print Scrn. Mutta ei Tehy varmaan ihan tuota tarkoittanut.

Antti Laaksonen [23.12.2004 13:33:09]

#

Lisää formille selainkontrollin kanssa samankokoinen PictureBox. Kirjoita sitten BitBlt-funktion määrittely ja siihen liittyvä vakio:

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 Const SRCCOPY = &HCC0020

Tämän jälkeen selaimessa näkyvän kuvan tallennus tiedostoon menee suurinpiirtein näin:

BitBlt Picture1.hDC, 0, 0, WebBrowser1.Width, WebBrowser1.Height, Me.hDC, WebBrowser1.Left, WebBrowser1.Top, SRCCOPY
SavePicture Picture1.Image, "sivu.bmp"

Tässä formin ScaleModen pitää olla 3 (pikseli) ja Picture1:n AutoRedrawin pitää olla True.

Tehy [23.12.2004 14:28:30]

#

Muuten näyttää toimivan, mutta tuo tallentaa vain käynnistä palkin tasalla olevat jutut, mutta ei siitä yhtään ylöspäin.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta