Opera Embedded

  • Vorab:

    Das ist hier keine superelegante Lösung mit Zugriff auf DOM, sondern eher ein Workaround um auch ohne IE-Objekt Html in eigene GUI einbetten zu können.

    Ich weiß auch nicht, ob sich Opera überhaupt anzapfen lässt, um direkt mit dem Objekt zu interagieren. Ich gehe hier einfach den Weg: Html-Datei im Temp-Ordner erstellen und als Parameter an den Opera-Aufruf anhängen. Das Opera-Fenster greife ich mir dann und hänge es als Child in eine eigene GUI.

    Einen Handling-Nachteil haben wir allerdings: Ich kann zwar in meiner angezeigten Html-Datei Referenzen auf Online-Seiten einfügen und dann in der Anwendung diese auch anzeigen - ABER: Ich komme nicht mehr zurück, da ich keine Navigationsmöglichkeit habe, ich kann immer nur eine neue Html-Datei erstellen und das Fenster Refreshen, um diese zu laden. Referenzen auf Textmarken funktionieren aber tadellos. Diese UDF ist gedacht um lokale Html-Dateien/Inhalte in eine GUI einzubetten.


    Opera habe ich verwendet, weil dieser Browser nach allem, was ich bisher gesehen habe, der einzige ist, der sich soweit personalisieren lässt (optisch), dass nur das nackte Fenster ohne Menüs, Bars, Statuszeile übrig bleibt. Die verwendete portable Version 12.18 ist mit ca. 30 MB auch eine der kleinsten von allen portablen Browsern. (Portabel deshalb, damit man diesen auch bei Projekten mitgeben kann). Wenn ihr den Browser selber laden möchtet: Opera@USB für Windows v12.18. Anschließend müssen über das Konfigurationsmenü (Rechtsklick in den geöffneten Browser) alle Anzeigen für Menüs, Bars, Statuszeile deaktiviert werden.

    Ich biete hier einen Gesamt-DL aller Dateien (UDF + Bsp.) mit Browser und bereits vorkonfiguriertem Profil zum DL (s. DL_embedded.zip.txt im Anhang).


    Bei einzelnem Download:

    In einem Ordner legt bitte folgende Struktur an

    Code
    <fonts> enthält "SourceCodePro" für "array_tut.htm"
    <Opera> portable Version 12.18
    array_tut.htm Testdatei, verwendet in "..ExampleHelp.au3"
    OperaEmbedded.au3 UDF
    OperaEmbedded_ExampleHelp.au3 Beispiel
    OperaEmbedded_ExampleTable.au3 Beispiel



    Eine Html-Datei kann man natürlich mit: ShellExecute(PathBrowser, @ScriptDir & "\meineDatei.html") ausführen. Jedoch dann mit Titel und Icon des Browserfensters.


    Ich verwende hier zum Aktualisieren der Inhalte, mangels anderer Techniken, das Senden von F5. Falls jemand einen eleganteren Weg kennt, immer her damit.

  • AutoIt: OperaEmbedded.au3

    Eine Html-Datei kann man natürlich mit: ShellExecute(PathBrowser, @ScriptDir & "\meineDatei.html") ausführen. Jedoch dann mit Titel und Icon des Browserfensters.

    Maybe you could cut off the border of the application you need to embed, using _WinAPI_SetWindowRgn() and _WinAPI_CreateRectRgn().


    Here's an example where i cut off the border of the Irrlicht Render window and place it in an AutoIt GUI.

    Everything needed to run it is in the attachment.