Controllo browser TsgcWebView2

Integra un browser Microsoft Edge WebView2 (Chromium) moderno e completo nelle tue applicazioni Delphi VCL. Trascina il componente visuale su un form, naviga verso qualsiasi URL, esegui JavaScript, gestisci cookie e download, tutto da codice Delphi o C++ Builder nativo.

TsgcWebView2

Un componente visuale VCL che incapsula Microsoft Edge WebView2 (Chromium). Imposta Parent e Align, punta DefaultURL a una pagina e avrai un vero browser integrato nella tua app, con pieno accesso all'interfaccia COM quando ti serve.

Classe del componente

TsgcWebView2

Piattaforme

Solo Windows

Edizione

Standard / Professional / Enterprise

Trascina il componente, naviga

Trascina un TsgcWebView2 su un form, imposta Parent e Align, punta DefaultURL a una pagina, poi chiama Navigate, esegui JavaScript con ExecuteScript e reagisci a OnNavigationCompleted.

uses
  sgcWebView2;

var
  WebView2: TsgcWebView2;
begin
  WebView2 := TsgcWebView2.Create(Self);
  WebView2.Parent := Self;
  WebView2.Align := alClient;
  WebView2.DefaultURL := 'https://www.example.com';

  // naviga a runtime
  WebView2.Navigate('https://www.esegece.com');
end;

// esegui JavaScript in modo asincrono (risultato in OnScriptExecuted)
procedure TForm1.Button1Click(Sender: TObject);
begin
  WebView2.ExecuteScript('document.title');
end;

// reagisci quando la pagina ha finito di caricarsi
procedure TForm1.WebView2NavigationCompleted(Sender: TObject;
  aIsSuccess: Boolean; aWebErrorStatus: Integer);
begin
  if aIsSuccess then
    Caption := WebView2.DocumentTitle;
end;
// uses: sgcWebView2
TsgcWebView2 *WebView2 = new TsgcWebView2(this);
WebView2->Parent = this;
WebView2->Align = alClient;
WebView2->DefaultURL = "https://www.example.com";

// naviga a runtime
WebView2->Navigate("https://www.esegece.com");

// esegui JavaScript in modo asincrono (risultato in OnScriptExecuted)
WebView2->ExecuteScript("document.title");

// handler OnNavigationCompleted
void __fastcall TForm1::WebView2NavigationCompleted(TObject *Sender,
  bool aIsSuccess, int aWebErrorStatus)
{
  if (aIsSuccess)
    Caption = WebView2->DocumentTitle;
}
// namespace: esegece.sgcWebSockets
var webView2 = new TsgcWebView2();
webView2.Parent = this;
webView2.Align = DockStyle.Fill;
webView2.DefaultURL = "https://www.example.com";

// naviga a runtime
webView2.Navigate("https://www.esegece.com");

// esegui JavaScript in modo asincrono (risultato in OnScriptExecuted)
webView2.ExecuteScript("document.title");

// handler OnNavigationCompleted
webView2.OnNavigationCompleted += (sender, e) =>
{
  if (e.IsSuccess)
    Text = webView2.DocumentTitle;
};

Cosa c'è dentro

Tutta la superficie di WebView2 esposta come proprietà, metodi ed eventi Delphi nativi, con accesso COM diretto a ICoreWebView2 per tutto ciò che non è ancora incapsulato.

Navigate e NavigateToString caricano URL o HTML in memoria, GoBack / GoForward percorrono la cronologia, Reload / Stop controllano il caricamento e NavigateWithPostData emette metodo, corpo e header personalizzati.

JavaScript

Esegui script con ExecuteScript (asincrono, risultato in OnScriptExecuted) o ExecuteScriptSync per un valore di ritorno JSON. AddInitScript inietta codice a ogni caricamento di pagina, e PostWebMessageAsJson / PostWebMessageAsString dialogano con la pagina, con le risposte in OnWebMessageReceived.

La proprietà di sola lettura CookieManager espone GetCookies, AddOrUpdateCookie, DeleteCookie e DeleteAllCookies così puoi leggere, impostare e cancellare i cookie di qualsiasi host da codice Delphi.

Download

Intercetta e traccia i download di file dall'inizio alla fine con OnDownloadStarting, OnDownloadProgress e OnDownloadCompleted. Annulla, reindirizza il percorso di destinazione o mostra l'avanzamento nella tua interfaccia.

Impostazioni e configurazione

Regola il browser integrato tramite Settings (ScriptEnabled, DevToolsEnabled, ContextMenuEnabled), imposta ZoomFactor, isola lo stato con UserDataFolder e blocca un runtime a versione fissa tramite BrowserExecutableFolder.

Avanzato

Salva le pagine con PrintToPdf / ShowPrintUI, cattura uno screenshot con CapturePreviewToFile, servi contenuti locali tramite SetVirtualHostNameToFolderMapping, apri Edge DevTools con OpenDevToolsWindow, disattiva l'audio e gestisci gli eventi di basic-auth e certificato del server.

Richiede il Microsoft Edge WebView2 Runtime e WebView2Loader.dll posizionata accanto al tuo eseguibile. Solo Windows, da Delphi 7 a Delphi 13.

Specifiche e riferimenti

Fonti autorevoli per il motore integrato da questo componente.

Documentazione e Demo

Collegamenti diretti al riferimento del componente, al progetto demo pronto all'uso e al download della versione di prova.

Guida online — TsgcWebView2 Riferimento completo di proprietà, metodi ed eventi di questo componente.
Progetto demo — Demos\WebView2 Progetto di esempio pronto all'uso. Incluso nel pacchetto sgcWebSockets — scarica la versione di prova qui sotto.
Manuale utente (PDF) Manuale completo che copre ogni componente della libreria.

Pronto a integrare un browser nella tua app?

Scarica la versione di prova gratuita e integra un browser Edge/Chromium moderno nelle tue applicazioni Delphi.