public interface ActionListener
{
int actionPerformed(ActionEvent event);
}
helloButton.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
textField.setText("Hello, World");
}
});
helloButton.addActionListener(listener);
listener.actionPerformed(event);
textField.setText("Hello, World!");
See: ActionTest.java
public static ActionListener createGreetingButtonListener(
final String message)
{
return new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
textField.setText(message);
}
};
}
See: ActionTest2.java
ActionTest.javaimport java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ActionTest
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
final int FIELD_WIDTH = 20;
final JTextField textField = new JTextField(FIELD_WIDTH);
textField.setText("Click a button!");
JButton helloButton = new JButton("Say Hello");
helloButton.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
textField.setText("Hello, World!");
}
});
JButton goodbyeButton = new JButton("Say Goodbye");
goodbyeButton.addActionListener(new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
textField.setText("Goodbye, World!");
}
});
Container contentPane = frame.getContentPane();
contentPane.setLayout(new FlowLayout());
contentPane.add(helloButton);
contentPane.add(goodbyeButton);
contentPane.add(textField);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}
ActionTest2.javaimport java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ActionTest2
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
final int FIELD_WIDTH = 20;
textField = new JTextField(FIELD_WIDTH);
textField.setText("Click a button!");
JButton helloButton = new JButton("Say Hello");
helloButton.addActionListener(
createGreetingButtonListener("Hello, World!"));
JButton goodbyeButton = new JButton("Say Goodbye");
goodbyeButton.addActionListener(
createGreetingButtonListener("Goodbye, World!"));
Container contentPane = frame.getContentPane();
contentPane.setLayout(new FlowLayout());
contentPane.add(helloButton);
contentPane.add(goodbyeButton);
contentPane.add(textField);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
public static ActionListener createGreetingButtonListener(
final String message)
{
return new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
textField.setText(message);
}
};
}
private static JTextField textField;
}
After pressing hello:
After pressing goodbye:
Maintained by John Loomis, updated Sat Feb 24 11:35:04 2007