HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

HTML oldal nyomtatása a WebBrowser komponensből


Példaprogram letöltése

12300 bájt

Alkalmazásunkban lehetőségünk van HTML oldalak megjelenítésére. Erre a WebBrowser komponenst használhatjuk, ami az Internet Explorer motorját használja. Az Internet Explorer-ben lehetőségünk van a megjelenített oldal kinyomtatására, és ugyanezt a funkciót elérhetjük a WebBrowser komponensben is. Ebben a cikkben ennek módját mutatjuk be, sőt, a nyomtatás előtt a nyomtatási képet is megjeleníthetjük.

A megoldás nem túl bonyolult, ha tudjuk, hogy a WebBrowser komponens ExecWB metódusával különböző parancsokat futtathatunk.
ExecWB
Osztály: TWebBrowser
procedure ExecWB(
cmdID: OLECMDID;
cmdexecopt: OLECMDEXECOPT;
var pvaIn: OleVariant;
var pvaOut: OleVariant
); overload;
Ezzel az eljárással különböző parancsokat futtathatunk. Az eljárásnak háromféle változata is van, amelyek csak a paraméterek számában térnek el egymástól:
    procedure ExecWB(cmdID: OLECMDID; cmdexecopt: OLECMDEXECOPT); overload;
    procedure ExecWB(cmdID: OLECMDID; cmdexecopt: OLECMDEXECOPT; var pvaIn: OleVariant); overload;
    procedure ExecWB(cmdID: OLECMDID; cmdexecopt: OLECMDEXECOPT; var pvaIn: OleVariant; 
                     var pvaOut: OleVariant); overload;
Paraméterek
cmdID: OLECMDID
Ebben a paraméterben adhatjuk meg a futtatandó parancs kódját. Minden kódhoz tartozik egy-egy konstans, a nyomtatáshoz és a nyomtatási kép megjelenítéséhez az alábbiak:
  • OLECMDID_PRINT: a megnyitott HTML fájl (vagy weboldal) nyomtatása;
  • OLECMDID_PRINTPREVIEW: az oldal nyomtatási képének megjelenítése egy külön ablakban.
cmdexecopt: OLECMDEXECOPT
Ebben a paraméterben megadhatjuk, hogy a parancsot felhasználó beavatkozással, vagy anélkül kívánjuk-e végrehajtani. Például nyomtatásnál megadhatjuk, hogy megjelenjen-e a Nyomtatás dialógus ablak. A használható konstansok a következők:
  • OLECMDEXECOPT_DODEFAULT: az alapértelmezés szerinti végrehajtás;
  • OLECMDEXECOPT_PROMPTUSER: felhasználói beavatkozás szükséges (pl. Nyomtatás dialógus ablakban megadni a szükséges paramétereket, kiválasztani a nyomtatót, stb.)
  • OLECMDEXECOPT_DONTPROMPTUSER: nem szükséges felhasználói beavatkozás, az alapértelmezett értékeket használja;
  • OLECMDEXECOPT_SHOWHELP: megjeleníti a megadott parancshoz tartozó súgót (ha van), de nem futtatja a parancsot.
var pvaIn: OleVariant
Ebben a paraméterben egy Variant tömböt adhatunk meg, amely az adott parancshoz tartozó paramétereket tartalmazza. Ez a paraméter elhagyható, ha nincsenek ilyen paraméterek.
var pvaOut: OleVariant
Ha a parancsnak van visszatérési értéke, akkor azt ebben a paraméterben kapjuk meg. Ellenkező esetben el is hagyhatjuk.
A megnyitott oldal nyomtatását tehát legegyszerűbben az alábbi parancssorral oldhatjuk meg:
WebBrowser1.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_PROMPTUSER);
A nyomtatási kép ehhez hasonló módon, de természetesen más parancskód megadásával történhet:
WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, OLECMDEXECOPT_DONTPROMPTUSER);

Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2002 évkönyv 254. 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 |