トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

Browser

org.eclipse.swt.browser.BrowserはSWT 3.0から追加されたWebブラウザウィジェットです。使い方はとても簡単で、インスタンスを生成してURLをセットするだけです。

Browser browser = new Browser(shell,SWT.BORDER);
browser.setUrl("http://www.google.co.jp");

以下に代表的なメソッドを示します。

// 1ページ戻る
browser.back();
// backが可能かどうか
boolean backEnabled = browser.isBackEnabled();
// 1ページ進む
browser.forward();
// forwardが可能かどうか
boolean forwardEnabled = browser.isForwardEnabled();
// リロード
browser.refresh();
// 読み込みを中止
browser.stop();

BrowserウィジェットはLinuxではMozillaのコンポーネントを利用して実装されており、Mozillaのバージョンによって動作しないこともあるようです。また、環境変数MOZILLA_FIVE_HOMEでMozillaのインストールディレクトリを指定しておく必要があります。詳しくは以下のURLを参照してください。

Browserウィジェット内のHTMLからJava側に何らかの値を返したい場合はStatusTextListenerを使用します。

browser.addStatusTextListener(new StatusTextListener() {
  public void changed(StatusTextEvent event) {
    System.out.println(event.text);
  }
});

Browserウィジェットで表示するHTML中のJavaScriptで以下のようにステータスラインに文字列をセットすると上記のStatusTextListenerが呼び出されます。

window.status='Hello!!';

さらにSWT 3.1からは任意のJavaScriptコードを実行することができるようになりました。これによってBrowserウィジェット内で表示されているWebページに対してJava側から簡単に通知を行うことができます。

browser.execute("alert('Hello!!');");

最終更新時間:2005年08月19日 11時44分27秒