Announcement

Collapse
No announcement yet.

TWebBrowser und Parent-Eigenschaft

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TWebBrowser und Parent-Eigenschaft

    Ich erstelle in meinen Programm dynmaisch TWebBrowser-Objekte, bei denen ich die Parent-Eigenschaft ändern möchte, damit ich den WebBrowser auf ein Panel eingrenzen kann.
    <p>
    Allerdings kann ich nicht ganz normal - wie bei allen anderen Vcl-Komponenten - angeben "WebBrowser1.Parent := Panel1;".
    <p>
    Auszug aus der Hilfe:
    <pre>
    Die Eigenschaft Parent ermöglicht den Zugriff auf die Automatisierungsschnittstelle des Containers der WebBrowser-Komponente.

    property Parent: IDispatch;
    </pre>

    <p>
    Hm, leider bin ich in COm-Sachen noch anfänger, und komme damit nicht weiter, vielleicht kann mir jemand mit dem korrekten Aufruf helfen,
    danke,
    Bernhard

  • #2
    Hallo,

    das hat nichts mit COM zu tun, da die VCL die Sachen selbst regelt. Das folgende Beispiel demonstriert, wie eine dynamisch zur Laufzeit erzeugten TWebBrowser-Instanz vollständig in einer TPanel-Instanz angezeigt wird. Das "Geheimnis" verbirgt sich hinter dem <b>InsertControl</b>-Aufruf:
    <pre>
    unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    StdCtrls, ExtCtrls, OleCtrls, SHDocVw;

    type
    TForm1 = class(TForm)
    Panel1: TPanel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    private
    { Private-Deklarationen }
    FWB : TWebBrowser;
    public
    { Public-Deklarationen }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.DFM}

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    FWB := TWebBrowser.Create(Panel1);
    FWB.Align := alClient;
    Panel1.InsertControl(FWB);
    FWB.Navigate('http://www.entwickler-forum.de');
    end;

    end.
    </pre&gt

    Comment


    • #3
      Vielen Dank für die schnelle Antwort..

      Comment

      Working...
      X