解答例 - 実習課題1 - 15.テキスト・コンポーネント2
(実習課題1)
以下の特徴をもつ、簡易ブラウザーを作成しなさい。
- ブラウザーに含まれるコンポーネントはURLを表示および指定するためのテキストフィールド。URLを指定してリターンすると、該当するページを表示する。
- ページの表示にエラーが発生した場合は、ブラウザーにその旨を表示する事。
- リンクをクリックしても反応しなくてよい。
- (ヒント)テキストフィールドに対して「ActionListener」を設定する。
解答例
/**
* SimpleBrowser.java
* TECHSCORE Javaユーザインタフェース15章 実習課題1
*
* Copyright (c) 2004 Four-Dimensional Data, Inc.
*/
package com.techscore.ui.chapter15.exercise1;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
public class SimpleBrowser extends JFrame implements ActionListener {
private JEditorPane editor;
private JTextField urlText;
public SimpleBrowser() {
super("SimpleBrowser");
setDefaultCloseOperation(EXIT_ON_CLOSE);
//JTextField
urlText = new JTextField("http://");
urlText.setPreferredSize(new Dimension(600, 20));
urlText.addActionListener(this);
getContentPane().add(urlText, BorderLayout.NORTH);
//JEditorPane
editor = new JEditorPane();
editor.setEditable(false);
JScrollPane scroll = new JScrollPane(editor);
scroll.setPreferredSize(new Dimension(600, 400));
getContentPane().add(scroll);
pack();
}
public void actionPerformed(ActionEvent event) {
try {
editor.setPage(urlText.getText());
} catch (IOException ex) {
editor.setText("Error: " + ex.getMessage());
}
}
public static void main(String[] args) {
new SimpleBrowser().setVisible(true);
}
}

