Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Использование WebView на основе EdgeHTML в приложениях Delphi и C++ Builder для Windows 10

Delphi , Интернет и Сети , Браузер

С появлением обновлённого браузера Microsoft Edge, основанного на движке Chromium, разработчики получили возможность использования современного веб-контента в своих приложениях. В частности, для Windows-приложений теперь доступен WebView на основе EdgeHTML, что позволяет интегрировать веб-браузер непосредственно в интерфейс приложения.

Обзор проблемы

Ранее для встраивания веб-контента в настольные приложения Windows использовался только Trident-based MSHTML control. С появлением новых блогов от Microsoft, стало известно, что теперь доступен WebViewControl для настольных приложений Windows, основанный на EdgeHTML.

Решение проблемы

Для использования WebView в приложениях на Delphi и C++ Builder, разработчикам необходимо учитывать, что WebViewControl доступен через WinRT, который не зависит от .NET. Это означает, что его можно использовать в обычных Win32-приложениях.

Delphi поддерживает использование компонентов WinRT, и в него встроены переводы некоторых типовых библиотек, а также дополнительные вспомогательные функции и классы для работы с WinRT.

Пример кода

Для демонстрации возможности использования WebView в приложениях на Delphi, ниже представлен пример кода, который инициализирует веб-контрол на основе EdgeHTML:

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls,
  System.Types,
  Winapi.Winrt,
  System.Win.WinRT,
  WinAPI.Foundation,
  WinAPI.Foundation.Types;

// ... (продолжение интерфейса)

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormResize(Sender: TObject);
    private
      { Private declarations }
      FProcess: IWebViewControlProcess;
      FBrowser: IWebViewControl;
      FBrowserSite: IWebViewControlSite;
      procedure WebViewCompleted(asyncInfo: IAsyncOperation_1__IWebViewControl; aasyncStatus: AsyncStatus);
    public
      { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

// ... (продолжение реализации)

procedure TForm1.FormCreate(Sender: TObject);
var
  Rect: TRectF;
  AsyncOperation: IAsyncOperation_1__IWebViewControl;
  CompletedHandler: IAsyncOperationCompletedHandler_1__IWebViewControl;
begin
  // ... (инициализация и создание WebViewControl)
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  // ... (очистка ресурсов)
end;

procedure TForm1.FormResize(Sender: TObject);
begin
  // ... (обновление размеров WebViewControl)
end;

procedure TForm1.WebViewCompleted(
  asyncInfo: IAsyncOperation_1__IWebViewControl;
  aasyncStatus: AsyncStatus);
begin
  // ... (загрузка веб-страницы в WebViewControl)
end;

// ... (продолжение реализации класса TWebViewControlCompletedHandler)

end.

Подтверждённый ответ

С выходом RAD Studio 10.4 Sydney, разработчики получили обновлённую поддержку для использования нового браузера Microsoft Edge на основе Chromium. В состав RAD Studio включен новый компонент TEdgeBrowser, который позволяет использовать движок Edge напрямую. Также возможна автоматическая смена движка для классического компонента TWebBrowser на новый, если он доступен.

Альтернативные подходы

Для использования функций WebView2, которые не поддерживаются в компоненте TEdgeBrowser, разработчики могут следовать инструкциям из ответа на Stack Overflow по ссылке: WebView2 (TEdgeBrowser) updated Delphi interface (e.g. ICoreWebView2Controller2).

Заключение

открывает новые возможности для интерактивного веб-контента в десктопных приложениях. С появлением новых версий RAD Studio, разработчики могут использовать современные компоненты для интеграции веб-браузера прямо в свой интерфейс.

Создано по материалам из источника по ссылке.

Использование WebView на основе EdgeHTML в приложениях Delphi и C++ Builder для интеграции веб-контента непосредственно в интерфейс Windows-приложений.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Браузер ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-02-20 22:50:08/0.0026330947875977/0