2

わかりましたので、リストに入れられた配列から現​​在の文字列を出力しようとしています...しかし、リストをクリックするとNullPointerExceptionが発生します... :\

ヘルプ?:)

import java.applet.Applet;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;


public class lisTry extends JApplet implements MouseListener {

public static String newline;
public static JList list;

    public void init() {

            DefaultListModel listModel = new DefaultListModel();
            listModel.addElement("Debbie Scott");
            listModel.addElement("Scott Hommel");
            listModel.addElement("Alan Sommerer");

            JList list = new JList(listModel);


        this.getContentPane().add(list);

        list.addMouseListener(this);

        String newline = "\n";

        list.setVisible(true);

    }

    public void mousePressed(MouseEvent e) { }

    public void mouseReleased(MouseEvent e) {
       int index = list.getSelectedIndex();
       System.out.println("You clicked on: " + index);
    }

    public void mouseEntered(MouseEvent e) { }

    public void mouseExited(MouseEvent e) { }

    public void mouseClicked(MouseEvent e) { }

    public void paint(Graphics g) {

    } 
}

ありがとうございました。

4

1 に答える 1

5

この行を変更します。

JList list = new JList(listModel);

この行に:

list = new JList(listModel);

コンストラクターでローカル変数を作成しているため、クラスのフィールドlistを非表示にしています。listそのため、フィールドlisTry.listは null のままなので、NullPointerException.

于 2010-07-16T18:52:35.893 に答える