解答例 - 実習課題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); } }