目次へ

解答例 - 実習課題1 - 9.基本的なコンポーネント3

(実習課題1)

以下のプログラムを作成しなさい。

  • ウィンドウに表示されるコンポーネントはリストと「表示」ボタン。
  • リストには10以上の都市の名前がリストアップされている事。
  • 「表示」ボタンを押すと、その時点で選択されている都市名がコンソールに表示される。
  • リストとのデータの受け渡しは配列で行う事。
  • (ヒント)「getSelectedIndices」メソッドを使う。

解答例

/**
 * ListFrame.java
 * TECHSCORE Javaユーザインタフェース9章 実習課題1
 *
 * Copyright (c) 2004 Four-Dimensional Data, Inc.
 */

package com.techscore.ui.chapter9.exercise1;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;

public class ListFrame extends JFrame implements ActionListener {

    private JList list;
    private JButton button;
    private final String listItem[] =
        { "Sapporo", "Sendai", "Chiba", "Tokyo", "Shizuoka", "Nagoya", "Osaka", "Okayama", "Hiroshima", "Fukuoka" };

    public ListFrame() {
        super("ListFrame");

        setDefaultCloseOperation(EXIT_ON_CLOSE);

        list = new JList(listItem);
        getContentPane().add(list);

        button = new JButton("print");
        button.addActionListener(this);
        getContentPane().add(button, BorderLayout.SOUTH);

        pack();
    }

    public void actionPerformed(ActionEvent e) {
        int selectedIndices[] = list.getSelectedIndices();

        System.out.println("--- selected cities ---");
        for (int i = 0; i < selectedIndices.length; i++) {
            System.out.println(listItem[selectedIndices[i]]);
        }
    }

    public static void main(String args[]) {
        new ListFrame().setVisible(true);
    }

}

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp