今月取りあげるのは、JavaFXの最も特徴的な機能といっても過言ではない、組み込みブラウザとチャートです。

 組み込みブラウザはあって当然、ないのは考えられない機能ですが、今までのSwingでは限定的にしか扱うことができませんでした。これに対し、JavaFXではやっと十分な機能を持つ組み込みブラウザが提供されるようになりました。

 また、チャートは折れ線グラフなどのグラフのことです。チャートもSwingでは提供されておらず、JFreeChartなどの外部のライブラリを導入する必要がありました。

 残念ながらJavaFXのチャートは機能が十分にあるとはいえないのですが、それでも標準でチャートを使用できるということは重要です。

 そこで、今月はこの2つの機能について紹介していきます。

組み込みブラウザ

 アプリケーションでHTMLドキュメントを表示したいことは多々あります。たとえば、ヘルプをHTMLドキュメントで記述することなどがあります。

 SwingでもHTMLを扱うことはできたのですが、如何せんサポートしているHTMLがHTML 3.2とかなり古いものでした。

 これに対し、JavaFXの組み込みブラウザは、ChromeやSafariなどと同じWebKitをペースとしたブラウザです。完全ではありませんがHTML 5もサポートしています。たとえば、Canvasなどを扱うことができます。

 次のバージョンのJavaFX 8ではHTML 5への対応がさらに進んでおり、HTML 5の多くの機能を使用することができるようになります。

基本的な使用法

 組み込みブラウザは2つのクラスから成り立っています。HTMLの表示を行なうjavafx.scene.web.WebViewクラスと、HTMLのロードやパースを行なうjavafx.scene.web.WebEngineクラスです。

 WebViewクラスはjavafx.scene.Nodeクラスのサブクラスで、シーングラフに追加することができます。

 では、WebViewクラスでhttp://itpro.nikkeibp.co.jp/を表示して見ましょう。

サンプルのプロジェクト (こちらからダウンロードできます)
simplebrowser.zip

 ソースコードを以下に示します。