HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

HTML oldal betöltése stream-ből a WebBrowser komponensbe


Példaprogram letöltése

5761 bájt

A WebBrowser kiválóan alkalmas arra, hogy saját alkalmazásunkban egy Web oldalt jelenítsünk meg, hiszen az Internet Explorer motorját használja erre. Elsősorban azonban HTML fájlok, vagy egy web szerver által szolgáltatott oldal megjelenítését teszi lehetővé. Ebben a példában egy olyan eljárást készítünk el, amelynek segítségével egy HTML dokumentumot tartalmazó stream-ből olvastatjuk be az oldalt a WebBrowser komponensbe.

Ezt a függvényt felhasználhatjuk például arra, hogy egy Web oldalt erőforrásként tároljunk el az EXE-be, majd ezt megjelenítjük a WebBrowser komponensben anélkül, hogy előzőleg elmentenénk egy fájlba. Persze azt érdemes figyelembe venni, hogy egy HTML oldal általában nem egyetlen fájlból épül fel, különösen akkor nem, ha még képeket is tartalmaz. Ebben az esetben kénytelenek leszünk elmenteni a képeket arra a helyre, ahol a HTML oldal hivatkozik rájuk. Ha viszont nem használunk képeket, és más egyéb elemeket, amelyek külön fájlban kapnának helyet (pl. stíluslapok), akkor nyugodtan tárolhatjuk az oldalt erőforrásként, vagy betölthetjük mondjuk egy Memo komponensből. Ezzel a módszerrel formázott szöveget jeleníthetünk meg a Form-on anélkül, hogy előtte egy külön fájlban el kellene tárolni a megjelenítendő dokumentumot.
Az eljárást egy külön unit-ban hozzuk létre (StrmBrowser), így könnyebben fel tudjuk használni más programokban.
LoadStreamToWebBrowser
procedure LoadStreamToWebBrowser(
Stream: TStream;
WebBrowser: TWebBrowser
);
Az eljárás a paraméterként megadott stream-ből beolvassa a HTML oldalt a szintén megadott WebBrowser komponensbe. A stream-nek a WebBrowser által ismert formátumban kell lennie (pl. HTML, TXT, stb.)
Paraméterek
Stream: TStream
Ebben a paraméterben kell megadni a dokumentumot tartalmazó stream objektumát. Ez lehet egy fájl (TFileStream), memória (TMemoryStrem) vagy akár erőforrás is (TResourceStream).
WebBrowser: TWebBrowser
Ebben a paraméterben kell megadni a böngésző objektumát.
Az eljárásban első lépésben megjelenítünk egy üres dokumentumot úgy, hogy az „about:blank” címet adjuk meg a Navigate eljárás paramétereként. Ezzel a Document property-n keresztül elérhető dokumentum objektumot inicializáljuk. Ezen az objektumon lekérdezzük az IPersistStreamInit interfészt, amin keresztül be tudjuk majd tölteni a stream-et a böngészőben. Ehhez viszont először meg kell hívnunk az interfész InitNew metódusát. Ha ez sikeresen lefutott, akkor létrehozunk egy memória stream-et, amibe átmásoljuk a paraméterként megadott stream tartalmát. Ezután létrehozunk egy TStreamAdapter objektumot, amellyel meghívjuk az interfész Load metódusát. Ez fogja betölteni a dokumentumot a böngészőbe.

Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2002 évkönyv 331. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |