我想要使得InerActionListener是内部类,不是用匿名内部类完成。我错在哪里了,我是初学者
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JActionListener extends JFrame{
private JButton btn;//按钮
private int num=0;
public JActionListener()
{
super("JActionListener示例");
Container c=getContentPane();
c.setLayout(new FlowLayout(FlowLayout.CENTER));
btn=new JButton("你点击"+num+"次");
btn.addActionListener(new InerActionListener());
c.add(btn); }
class InerActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
JButton btn2=(JButton)e.getSource();
num++;
btn.setText("你点击"+num+"次");
}
} public static void main(String[] args) {
JActionListener al=new JActionListener();
al.setSize(400,400);
al.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
al.setVisible(true);
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JActionListener extends JFrame{
private JButton btn;//按钮
private int num=0;
public JActionListener()
{
super("JActionListener示例");
Container c=getContentPane();
c.setLayout(new FlowLayout(FlowLayout.CENTER));
btn=new JButton("你点击"+num+"次");
btn.addActionListener(new InerActionListener());
c.add(btn); }
class InerActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
JButton btn2=(JButton)e.getSource();
num++;
btn.setText("你点击"+num+"次");
}
} public static void main(String[] args) {
JActionListener al=new JActionListener();
al.setSize(400,400);
al.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
al.setVisible(true);
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JActionListener extends JFrame{
private JButton btn;//按钮
private int num=0;
public JActionListener()
{
super( "JActionListener示例 ");
JPanel panel = new JPanel();
this.getContentPane().add(panel);
btn=new JButton( "你点击 "+num+ "次 ");
btn.addActionListener(new InerActionListener());
panel.add(btn);
}
class InerActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
//JButton btn2=(JButton)e.getSource();
num++;
btn.setText( "你点击 "+num+ "次 ");
JActionListener.this.repaint();
}
} public static void main(String[] args) {
JActionListener al=new JActionListener();
al.setSize(400,400);
al.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
al.setVisible(true);
}
}