RAD Studio 10.4では、VCLアプリケーションで、新しいChromiumベースのEdgeブラウザコントロールによって、Webコンテンツの表示、操作が可能になる予定です。この新しいTEdgeBrowserコンポーネントは、Microsoft WebView2コンポーネントをラッピングしたものです。TEdgeBrowserは、従来のIE(Internet Explorer)WebBrowserコントロールを使用するTWebBrowserに代わるものです。ただし、TWebBrowserは引き続きVCLコンポーネントセットに残され、かついくつかの注目すべき変更が加えられています(以下の「TWebBrowserはどうなるのか?」を参照)。

TEdgeBrowserの要件

TWebBrowserはWindows OSが提供するInternet Explorer WebBrowserコントロールを使用するため、特別な事前環境の用意は不要です。Windows上で、Internet Explorerコントロールが利用できる環境であれば常に機能します。一方、Microsoft Edgeは(現時点では)OSのコンポーネントではありません。そして、これはまだ正式にはリリースされていません。そのため、それを使用するアプリケーションを実行する前に、これらのアイテムがPCにインストールされていることを確認する必要があります。

当面、Edge Canaryは、開発用のPCとエンドユーザー用のPCの双方で、アプリケーションのコンパイルならびに実行のために必要な要件となります。WebView2向けと同様、必要なDLLはプログラムと一緒に配布する必要があります。いずれもMicrosoftの求める要件とバイナリセットであり、公式リリースでは変更の可能性があります。

Edge(Canary version)をインストールして、必要なMicrosoft WebView2パッケージをインストールしたら、以下のように、RAD Studio 10.4のIDEでGetItパッケージマネージャウィンドウを開いて、対応するエントリを検索します。

パッケージをインストールすると、アプリケーションに必要なDLLが、32-bitアプリ用と64-bitアプリ用にそれぞれRAD Studioの再配布可能フォルダにコピーされます(いずれもWebView2Loader.dllという名称です)。このDLLを、ビルドターゲットフォルダ、ないしは検索パス上のどこかにコピーします。

Edge Browserコンポーネントの使用

TEdgeBrowserコンポーネントの使い方は、TWebBrowserとほぼ同じです。実際、いくつかのメソッドとプロパティはTWebBrowserのそれと類似しています。コンポーネントをVCLフォームにドロップしたら、以下のようにサイズを適当に調整します。

特定のURLのページを表示するには、そのURLをNavigateメソッドに渡すだけです。

   EdgeBrowser1.Navigate('https://www.embarcadero.com');

以上です。アプリケーションを実行すると、次のように表示されます。

TWebBrowserはどうなるのか?

VCL TWebBrowserコンポーネントは、これまでと同じ役割を果たします。つまり、Internet Explorer WebBrowserブラウザコントロールによって、Webコンテンツをレンダリングする機能を提供します。ただし、こうした従来の動作のほかに、TWebBrowserには、新しくSelectedEngineプロパティが加わりました。このプロパティを用いれば、従来のIEベースのブラウザコントロールに加えて、ターゲットマシンで新しいEdge(Chromium)WebView2ブラウザコントロールが使用できる場合に、これを用いるように動作させることができます

このメリットは、すべてのWindows PCで機能する単一のブラウザコントロールを提供し、同時に既存コードとの(ブラウザコンポーネントで使用しているメソッドとプロパティに関する)高い互換性を維持することです。新しいEdgeコントロールのメリットは、この新しいエンジンをカスタマイズするためのより強力な能力を備えている点です。

まとめ

RAD Studioが10.4で、まもなくTEdgeBrowserコンポーネントを提供できるようになることは大変喜ばしいことですが、この新しいVCLコントロールがすべてではありません。10.4では、Windowsコンポーネントライブラリについて重点的に取り組んできており、その結果に満足しています。10.4におけるその他のVCL機能の詳細については、近日公開する予定です。


アップデートサブスクリプションに加入している方は、ベータビルドへのアクセスが可能です。現在でも10.4のベータプログラムに参加可能ですので、お問い合わせください。

この記事は、RAD Studioの将来のリリースに関するプレビューです。製品品質やスケジュール等の理由により、紹介した機能の提供が変更になる可能性があります。製品が正式にリリースされるまで、最終的な機能、スペック等について保証されません。