Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TEdgeBrowser zeigt nichts an (https://www.delphipraxis.net/211855-tedgebrowser-zeigt-nichts.html)

BlueStarHH 11. Nov 2022 14:33

TEdgeBrowser zeigt nichts an
 
Hallo,

ich lege eine TEdgeBrowser-Komponente auf eine Delphi 11 Form. Nichts wird verändert. Mit EdgeBrowser1.Navigate('https://www.test.de') möchte ich eine Seite laden. Doch es passiert einfach nichts. Keine Seite zu sehen und auch keine Fehlermeldung.

Ich habe das Windows 11. Wenn ich die WebView2 Runtime von MS installieren möchte, sagt diese: Geht nicht, ist schon installiert. Dann das EdgeView 2 SDK mit GetIt installiert. Bringt auch nichts. Edge kann ich ganz normal aus dem Startmenü als Browser starten. Er ist also da. Was mache ich falsch?

himitsu 11. Nov 2022 15:02

AW: TEdgeBrowser zeigt nichts an
 
Alternativ:

TWebBrowser
* bei dem kannst über ein Property einstellen, ob IE oder Edge oder "Beides"
* wenn Edge eingestellt, wird zwar intern auch der Code vom TEdgeBrowser genutzt, aber vielleicht geht es ja dennoch

Papaschlumpf73 11. Nov 2022 15:16

AW: TEdgeBrowser zeigt nichts an
 
Da muss doch die eine WebView-DLL ins Anwendungsverzeichnis. Habe gerade kein Delphi zur Hand.

Der schöne Günther 11. Nov 2022 17:32

AW: TEdgeBrowser zeigt nichts an
 
Ja, die WebView2Loader.dll vergisst man immer gerne 🤨

Wäre schön, wenn man zur Laufzeit im Debugger eine Exception bekommen würde, stattdessen passiert einfach ... nichts.

BlueStarHH 11. Nov 2022 18:50

AW: TEdgeBrowser zeigt nichts an
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1514662)
Ja, die WebView2Loader.dll vergisst man immer gerne

Danke, das wars!

Jetzt habe ich das nächste Problem. Ich möchten den Webbrowser erst erzeugen, wenn ein Button geklickt wird:

Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var
  Webbrowser: TEdgeBrowser;
begin
  Webbrowser := TEdgeBrowser(self);
  TWinControl(Webbrowser).Parent := self;
  Webbrowser.Align := alClient;

  if not Webbrowser.WebViewCreated then
    Webbrowser.CreateWebView; <-- Access violation

  Webbrowser.Navigate('https://www.test.de');
end;
Doch dabei tritt an der markierten Stelle immer eine Access violation auf. Wer kennt abhilfe? Danke!

gubbe 11. Nov 2022 18:56

AW: TEdgeBrowser zeigt nichts an
 
Schau Dir mal die erste Zeile genauer an. Du erzeugst kein neues Webview, sondern sprichst das Form (Self) an. Es fehlt das Create.

BlueStarHH 11. Nov 2022 19:02

AW: TEdgeBrowser zeigt nichts an
 
Zitat:

Zitat von gubbe (Beitrag 1514666)
Schau Dir mal die erste Zeile genauer an. Du erzeugst kein neues Webview, sondern sprichst das Form (Self) an. Es fehlt das Create.

Danke! Ich sag nur "Tomaten auf den Augen". Hab ich einfach nicht gesehen, weil es so selbstverständlich ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz