A twebbrowser összetevő használatával nyomja meg a számítógépet

Alapműveletek

Ahhoz, hogy a TWebBrowser programot használhassa, helyezze el a megfelelő összetevőt az űrlap Internetes lapján. Ezután egy HTML oldal megjelenítéséhez meg kell hívnia navigációs módját:

Vessünk egy pillantást a Navigate módszerrel átadott paraméterekre.

A fennmaradó paraméterek nem kötelezőek, és további információk átadására szolgálnak (1. táblázat).

A legérdekesebb a PostData paraméter, amely lehetővé teszi a webkiszolgálónak az űrlap kitöltése eredményeként kapott adatokat, ha ez a kiszolgáló HTTP POST tranzakciót igényel. Így a következő kódfájl elküldi a kiszolgálónak a felhasználónevet és a jelszót, amelyet a Delphi formájában töltenek ki:

Például egy webszerveren a következő ASP-parancsfájl feldolgozhatja ezt a kérelmet:

Az adatok beérkezése után a felhasználónak lehetőséget kell adni a velük való együttműködésre. Számos TWebBrowser funkció elérhető az ExecWB módszerrel, amely egyszerű hozzáférést biztosít az IOleCommandTarget felülethez. Ez a módszer a következő formában van:

A CmdID lehet az OLECMDID állandók egyike a ShDocVw.pas fájlban.

A cmdexecopt paraméter a Táblázatban szereplő négy érték egyikét veszi fel. 2.

A pvaIn és pvaOut paraméterek opcionálisak és függenek az adott parancstól.

Lehetőség van arra, hogy a TWebBrowsertől megkapja a parancs használatát a függvény használatával:

A függvény egy bitmaszkot ad vissza a táblázatban megadott értékekből. 3.

Ezért beállíthatja a felületet a TWebBrowser aktuális verziójától függően:

A TWebBrowser tartalmának kinyomtatásához használja az OLECMDID_PRINT parancsot. A nyomtatási módszer különösen a következőképpen nézhető ki:

A próbálkozás ... kivéve a ... véglezárást azért szükséges, mert a TWebBrowser kivétel EOleException kivételt generál a kóddal, amikor ExecWB parancsot hajt végre:

Az Internet Explorer 5-től kezdődően további parancsok támogatottak, amelyeket az IOleCommandTarget felület támogat. Jelentősen bővítik az összetevők kezelésére szolgáló képességeket, de a 4. verzióban nem állnak rendelkezésre, vagy nem dokumentálják. Ez bizonyos nehézségeket okoz a programozásban. Tehát ha egy letöltött oldalt keres egy keresést, akkor a következő kódot kell megadnia:

Ebben az esetben egy nem dokumentált hívás használata indokolt, mivel a 4-es verzióban ez a hívás többé nem változik, és az 5-ös verzióban a dokumentált módszert észleljük és használjuk. Ugyanakkor az IE4 még mindig elég gyakori, ezért nem lenne helyénvaló teljesen megfosztani a programot az ilyen számítógépek keresésének lehetőségétől.

csípés

Ha finomítani szeretné az összetevőt, végre kell hajtania az IDocHostUIHandler interfészt, amely lehetővé teszi a programozó számára, hogy átvehesse a TWebBrowser viselkedését.

A felületet a következőképpen deklaráltuk:

A TWebBrowser örököse, aki ezt az interfészt alkalmazza, a következőképpen kell bejelenteni:

A CD-ROM-on a komponens kódja. amely végrehajtja a minimális funkcionalitást. Használhatja a kiterjesztett TWebBrowser örökösök létrehozásának alapjául.

Most nézzük meg az IDocHostUIHandler interfész legérdekesebb módszereit a programozó szemszögéből.

Kezdjük a ShowContextMenu módszerrel:

Ez a funkció akkor hívható meg, amikor a TWebBrowser megjelenít egy helyi menüt. Ha megjelenik a saját menüje, vagy el szeretné nyomni a menüt, akkor a függvénynek vissza kell állnia az S_OK értékét, és ha a menünek meg kell jelennie a TWebBrowser - majd S_FALSE.

A következő paraméterek átadásra kerülnek a függvénynek:

1. A DwID a menü azonosítója, amely a következő értékek valamelyikét veheti igénybe:

Az azonosító értékétől függően megjeleníthet egy megfelelő menüt.

2. ppt - koordináták, amelyeken a menü megjelenik.

3. pcmdtReserved - interface IOleCommandTarget, amely lehetővé teszi a parancsok állapotának lekérdezését és végrehajtását.

4. pdispReserved - Az objektum azon IDispatch interfésze, amelyre a menüt hívják.

A módszer legegyszerűbb végrehajtása így néz ki:

A helyi menü teljes kikapcsolásához a módszernek mindig vissza kell állnia az S_OK értéket.

A következő módszer, amelyet figyelembe fogunk venni - GetHostInfo:

Egy alkalmazás képes feltölteni egy pInfo struktúrát, amelyet:

A dwFlags a következő zászlók bitmaszkja, a táblázatban látható. 4. és a dwDoubleClick beállítja a választ az egér duplán történő kattintásra, és a táblázatban látható értékek valamelyikét veszi fel. 5.

A módszernek vissza kell adnia egy S_OK vagy OLE hibakódot.

Például egy lapos gördítősáv nélküli és háromdimenziós keret nélküli ablak létrehozásához a következőképpen kell végrehajtania ezt a módszert:

lehetővé teszi, hogy elfogja a parancsok végrehajtását és a "forró" kulcsok feldolgozását, és helyettesítse a sajátját.

lehetővé teszi, hogy megadja a rendszerleíró adatbázisban az útvonalat, amelyet a TWebBrowser a beállítások tárolására használ. Ez különösen lehetővé teszi, hogy a programban használt összetevőt az Internet Explorer aktuális beállításaitól függetlenül készítsük el.

Az útvonalat a HKEY_CURRENT_USER rendszerleíró kulcs tartalmazza.

A módszer tipikus végrehajtása így néz ki:

Számos beállítás létezik, amelyek a GetOptionKeyPath kezelő rendelkezésre állása ellenére minden esetben a szabványos Internet Explorer beállításokból származnak. Ezek közül a legfontosabbak a nyomtatáshoz használt fejlécek. Az Internet Explorer 5,5-ös verziójú verzióiban a fejlécek és láblécek módosításának (vagy elrejtésének) egyetlen módja az új értékek írása a rendszerleíró kulcshoz:

nyomtatás előtt és visszaállításuk után.

És most beszéljünk a módszerről

Lehetővé teszi, hogy mutasson egy mutatót az alkalmazásban végrehajtott IDispatch felülethez, amely a TWebBrowserben található szkriptek számára elérhető lesz. Ha nem hajtja végre ezt az interfészt, a ppDispatch paramétert NIL-re kell állítani. A módszer sikeres S_OK értéket ad vissza, vagy hiba esetén OLE hibakódot.

Az interfész módszerei a TWebBrowserben végrehajtott szkriptekből származnak, az alábbiak szerint:

Az IDispatch-ot például a TAutoObject osztály használatával valósíthatja meg.

A TranslateURL módszer lehetővé teszi az oldal betöltésének URL-jét.

A pchURLIn a forrás URL-t tartalmazó karakterláncra mutat. Ha az alkalmazás sugároz, akkor a CoTaskMemAlloc függvény segítségével fel kell osztania a memóriát az új értékhez, töltse ki a puffert az új URL értékkel és adja vissza az S_OK értéket.

Ellenkező esetben be kell állítania a ppchURLOut értéket a NIL értékre és vissza kell adnia az S_FALSE értéket. Hiba esetén a módszernek vissza kell állítania az OLE hibakódot.

A kezelő csak akkor hívható meg, ha egy interaktív kapcsolatot átad a TWebBrowser-ből, és nem hívja meg a navigációt a navigációs módszerrel.

Hozzáférés a TWebBrowser dokumentummodellhez

Az Internet Explorer egy dinamikus HTML (DHTML) nevű HTML kiterjesztést valósít meg. Ez a modell minden eleme a HTML-dokumentum egy sor tárgyak gyűjtemény elérhető változtatni. Scripts ágyazva az oldalon, és az alkalmazás, és hozzáférjenek az e gyűjtemények, megtalálja, és változtatni elemek, valamint hozzá újakat, és a változás azonnal megjelenik a TWebBrowser ablakban. Hierarchikus tárgy ábrázolása HTML objektum neve DOM (Document Object Model).

Az IE ActiveX vezérlő DOM programozója COM-interfészek készletként érhető el. A hozzáféréshez a kiindulási pont a tulajdon:

Ez a tulajdonság hozzáférést biztosít az IHtmlDocument2 felülethez, amely lehetővé teszi a dokumentum tartalmának kezelését. Interfész lekéréséhez kérnie kell az operátort használó lekérdezést:

A DOM egy dokumentum az elemgyűjtemények gyűjteménye. A gyűjteményhez való hozzáféréshez használja az IHtmlElementCollection felületet és az IHtmlElementet a gyűjteményelemre. A következő példa bemutatja az aktuális dokumentumban lévő összes címkét és a címkéken belüli szöveget:

Ezenkívül dinamikusan létrehozhatók a memóriában lévő dokumentumok, anélkül, hogy lemezt írnának, és a "file:

Mutassuk be a munkát a TWebBrowser dokumentummodell segítségével konkrét példával. A formanyomtatványt a TWebBrowser, a TMemo és a három TButton elemre tesszük, majd létrehozzuk a következő eseménykezelőket:

A Memo1.Lines részben a következő szöveget írjuk:

Tehát dinamikusan tudtunk HTML-dokumentumokat létrehozni és átadni őket a felhasználónak.

A közelmúltban a Cougar egy új sorozatú tápegységet vezetett be a hagyományos PC-khez - a VTX-hez, a korlátozott költségvetésű felhasználók számára. Ebben a felülvizsgálat során figyelembe kell venni a Cougar VTX600 modellt, amely jellemzői miatt az egyik legnépszerűbb ebben a tápegységben

Az évente megrendezésre kerülő esemény kapszaicin SIGGRAPH Los Angeles, az AMD megerősítette pozícióját a PC-piac a high-end új processzorok Ryzen Threadripper és GPU «Vega»

Egy egyszerű és kényelmes építési hétköznapi felhasználók hálózati cég ZyXEL kiadta a következő változat az internetes csomópont csatlakozik a 3G / 4G hálózatok USB-modem Wi-Fi hozzáférési pont - ZyXEL Keenetic 4G III, amit úgy ez a felülvizsgálat

Ahhoz, hogy az ő és így egy nagy család router és router cég ASUS nemrég hozzáadott két nagyon érdekes modell: a zászlóshajó 4G-AC55U és könnyebb 4G-N12. Ez a cikk az ASUS 4G-AC55U zászlóshajóját fogja figyelembe venni

Fiatal, de ambiciózus cég Krez idén kiadott egy új, eredeti modell laptop Krez Ninja (modell TM1102B32) Windows 10. Mivel ez a számítógép egy forgatható képernyő, ez szolgál egy univerzális megoldás - sikeresen lehet alkalmazni a munkát, és tanulmányozásra és játékokra

Ha gyakran fotókat nyomtat, és máris belefáradt a nyomtatóban lévő patronok cseréjéhez, forduljon az Epson L850 MFP-hez. Nagy mennyiségű fogyóeszköz, kitűnő minőségű nyomatok, sokféle funkcionalitás - ezek csak néhány előnye ennek a modellnek

Kapcsolódó cikkek