import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class TwoButtons extends JFrame {
// unsere Klasse erbt von JFrame und kann deswegen als Fenster fungieren
public TwoButtons() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
// unser Panel fuer die Buttons und Textfeld anlegen
JPanel content = new JPanel(new FlowLayout());
// Textfeld anlegen, dass nicht editierbar ist
// es muss 'final' sein, weil wir es in einer anonymen Klasse benutzen wollen
final JTextField tf = new JTextField(20);
tf.setText("Klick auf einen Button!");
tf.setEditable(false);
// unsere Buttons
JButton b1 = new JButton("Button1");
JButton b2 = new JButton("Button2");
// ActionListerner fuer unsere Buttons
b1.addActionListener(new ActionListener() {
// ein neues ActionListener Objekt
@Override public void actionPerformed(ActionEvent e) {
tf.setText(((JButton) e.getSource()).getText()+" wurde gedrueckt.");
}
});
b2.addActionListener(new ActionListener() {
// ein neues ActionListener Objekt
@Override public void actionPerformed(ActionEvent e) {
tf.setText(((JButton) e.getSource()).getText()+" wurde gedrueckt.");
}
});
// Buttons unserer Panel hinzufuegen
content.add(b1);
content.add(b2);
// text feld hinzufuegen
content.add(tf);
// unser Panel als ContentPane setzen
setContentPane(content);
pack();
}
public static void main(String[] args) {
// unser Fenster anzeigen lassen
new TwoButtons().setVisible(true);
}
}