3

皆さん、私は単純なボタンActionListenerを実装するつもりですが、機能しないようです。Javaコードは次のように添付されます.....プログラムは、ユーザーからのクリックアクションに応答し、JLabelのコンテキストを変更することを目的としています。

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

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Frame extends JFrame implements ActionListener {

    public JButton btn = new JButton("Click");
    public JLabel display = new JLabel("null");
    public JPanel mainPanel = new JPanel();

    public Frame() {

        mainPanel.add(btn);
        mainPanel.add(display);

        add(mainPanel);
    }

    public void actionPerformed(ActionEvent e) {

        if (e.getSource() == btn) {
            display.setText("it works");
            System.out.println("it works");
        }
    }

    public static void main(String[] args) {

        Frame testFrame = new Frame();
        testFrame.pack();
        testFrame.setVisible(true);

    }
}
4

2 に答える 2

7

actionlistener(JFrame自体)はaddActionListenerで追加されません。

于 2012-09-11T07:21:40.087 に答える
7

ボタンにActionListnerを追加する必要があります

public Frame(){

    mainPanel.add(btn);
    mainPanel.add(display);
    btn.addActionListener(this);
    add(mainPanel);
}
于 2012-09-11T07:22:15.793 に答える