【发布时间】:2018-09-21 13:38:29
【问题描述】:
我已经制作了这个程序,我想在单击某个按钮时打印一条消息和按钮的名称。但它不会打印任何东西,也不会出错。
public class Example {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setTitle("Hello");
frame.setSize(400, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLayout(new BorderLayout());
JPanel buttonsPanel = new JPanel();
buttonsPanel.setLayout(new GridLayout(2, 2));
JTextArea txtArea = new JTextArea();
HelloActionListener listen = new HelloActionListener(txtArea);
JButton b1 = new JButton("TOP");
b1.addActionListener(listen);
JButton b2 = new JButton("LEFT");
JButton b3 = new JButton("RIGHT");
JButton b4 = new JButton("BOTTOM");
b4.addActionListener(listen);
}
}
还有班级HelloActionListener:
public class HelloActionListener implements ActionListener {
public JTextArea area;
public HelloActionListener(JTextArea area) {
this.area = area;
}
@Override
public void actionPerformed(ActionEvent e) {
JButton x = (JButton) e.getSource();
area.setText("Hello Folks" + x.getText());
}
}
有人知道我的错误在哪里吗?
【问题讨论】:
标签: java swing actionlistener jtextfield