Controle de Navegador TsgcWebView2

Embuta um navegador moderno e completo Microsoft Edge WebView2 (Chromium) dentro das suas aplicações Delphi VCL. Solte o componente visual em um formulário, navegue para qualquer URL, execute JavaScript, gerencie cookies e downloads, tudo a partir de código Delphi ou C++ Builder nativo.

TsgcWebView2

Um componente visual VCL que encapsula o Microsoft Edge WebView2 (Chromium). Defina Parent e Align, aponte DefaultURL para uma página e você terá um navegador real embutido na sua aplicação, com acesso completo à interface COM quando precisar.

Classe do componente

TsgcWebView2

Plataformas

Apenas Windows

Edição

Standard / Professional / Enterprise

Solte o componente, navegue

Solte um TsgcWebView2 em um formulário, defina Parent e Align, aponte DefaultURL para uma página e então chame Navigate, execute JavaScript com ExecuteScript e reaja a OnNavigationCompleted.

uses
  sgcWebView2;

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

  // navega em tempo de execução
  WebView2.Navigate('https://www.esegece.com');
end;

// executa JavaScript de forma assíncrona (resultado em OnScriptExecuted)
procedure TForm1.Button1Click(Sender: TObject);
begin
  WebView2.ExecuteScript('document.title');
end;

// reage quando a página termina de carregar
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";

// navega em tempo de execução
WebView2->Navigate("https://www.esegece.com");

// executa JavaScript de forma assíncrona (resultado em OnScriptExecuted)
WebView2->ExecuteScript("document.title");

// manipulador 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";

// navega em tempo de execução
webView2.Navigate("https://www.esegece.com");

// executa JavaScript de forma assíncrona (resultado em OnScriptExecuted)
webView2.ExecuteScript("document.title");

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

O que está incluído

Toda a superfície do WebView2 exposta como propriedades, métodos e eventos Delphi nativos, com acesso COM ICoreWebView2 direto para qualquer coisa que ainda não esteja encapsulada.

Navigate e NavigateToString carregam URLs ou HTML em memória, GoBack / GoForward percorrem o histórico, Reload / Stop controlam o carregamento, e NavigateWithPostData emite um método, corpo e cabeçalhos personalizados.

JavaScript

Execute scripts com ExecuteScript (assíncrono, resultado em OnScriptExecuted) ou ExecuteScriptSync para um valor de retorno JSON. AddInitScript injeta código em cada carregamento de página, e PostWebMessageAsJson / PostWebMessageAsString conversam com a página, com respostas em OnWebMessageReceived.

Gerenciamento de cookies

O CookieManager somente-leitura expõe GetCookies, AddOrUpdateCookie, DeleteCookie e DeleteAllCookies para que você possa ler, definir e limpar cookies de qualquer host a partir de código Delphi.

Downloads

Intercepte e acompanhe os downloads de arquivos de ponta a ponta com OnDownloadStarting, OnDownloadProgress e OnDownloadCompleted. Cancele, redirecione o caminho de destino ou relate o progresso na sua própria interface.

Configurações & ajustes

Ajuste o navegador embutido por meio de Settings (ScriptEnabled, DevToolsEnabled, ContextMenuEnabled), defina ZoomFactor, isole o estado com UserDataFolder e fixe um runtime de versão fixa via BrowserExecutableFolder.

Avançado

Salve páginas com PrintToPdf / ShowPrintUI, capture uma captura de tela com CapturePreviewToFile, sirva conteúdo local via SetVirtualHostNameToFolderMapping, abra o Edge DevTools com OpenDevToolsWindow, silencie o áudio e trate eventos de basic-auth e de certificado de servidor.

Requer o Microsoft Edge WebView2 Runtime e a WebView2Loader.dll posicionada ao lado do seu executável. Apenas Windows, Delphi 7 até Delphi 13.

Especificações & referências

Fontes autoritativas para o engine que este componente embute.

Documentação & Demos

Acesse direto a referência do componente, baixe o projeto de demonstração pronto para rodar e faça o download da versão de avaliação.

Ajuda online — TsgcWebView2 Referência completa de propriedades, métodos e eventos deste componente.
Projeto de demonstração — Demos\WebView2 Projeto de exemplo pronto para rodar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo.
Manual do usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca.

Pronto para embutir um navegador na sua aplicação?

Baixe a versão de avaliação gratuita e embuta um navegador Edge/Chromium moderno nas suas aplicações Delphi.