Javaプログラミング/Javaプログラミング関連情報

JEditorPaneでWebページを表示しよう!(2ページ目)

今回は、HTMLのドキュメントを表示できるJEditorPaneの使い方について説明しましょう。

執筆者:掌田 津耶乃

JEditorPaneとJScrollPaneの基本


GoogleのサイトをJEditorPaneで表示させてみた。

ここではJEditorPaneを作成する際、Webページのアドレスを渡すことで特定のページを表示させています。では、コンストラクタの処理をざっと見てみましょう。ここではJTextFieldやJButtonなどを作成した後、JEditorPaneのインスタンスを作成しています。

try {
  doc_pane = new JEditorPane("http://google.com/");
} catch (IOException e) {
  e.printStackTrace();
  doc_pane = new JEditorPane();
}

いきなり、インスタンス作成がtryで囲われていて驚いた人もいるでしょう。ここでは、引数にアドレスを渡していますね。こうすることで、そのアドレスにアクセスし、そのページをダウンロードして表示した状態でJEditorPaneを作成するのです。ただし、きちんと指定のアドレスのデータがダウンロードできるとは限りません。問題があってアクセスに失敗するとIOExceptionが発生するため、このように例外処理が必要となります。

catch節では、例外をprintStackTraceした後、引数なしでnew JEditorPaneを実行していますね。表示するアドレスの指定がなければ例外は発生しませんから、当然、例外処理も不要です。

続いて、JScrollPaneを作成します。JEditorPaneは、例によってこれ自体ではスクロールバーなどは表示されません。スクロール表示するには、スクロール専用のJScrollPaneが必要です。

JScrollPane scroll = new JScrollPane(doc_pane,
    JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
    JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);

ここでは、第1引数に組み込むコンポーネントとしてJEditorPaneを指定しています。そして第2、第3引数には、縦横のスクロールバー表示のルールを示すJScrollPaneのクラスフィールドを渡します。これには、以下のようなものがあります。

・垂直スクロールバー用
VERTICAL_SCROLLBAR_AS_NEEDED:必要に応じて表示される。
VERTICAL_SCROLLBAR_NEVER:常に表示されない。
VERTICAL_SCROLLBAR_ALWAYS:常に表示される。

・水平スクロールバー用
HORIZONTAL_SCROLLBAR_AS_NEEDED:必要に応じて表示される。
HORIZONTAL_SCROLLBAR_NEVER:常に表示されない。
HORIZONTAL_SCROLLBAR_ALWAYS:常に表示される。

ここでは、垂直スクロールバーを常に表示し、水平スクロールバーは必要に応じて表示する、というように設定されていたわけですね。JEditorPaneは、Webページを表示するものですから、たいていは縦方向のスクロールバーを使ってスクロール表示しないといけないでしょう。そこでこのように設定をしておきました。


  • 前のページへ
  • 1
  • 2
  • 3
  • 5
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます