// Файл ButtonDemo.java
// Демонстрирует кнопки.
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
<applet code = "ButtonDemo" width = 250 height = 150>
</applet>
*/
public class ButtonDemo extends Applet implements ActionListener {
String msg = "";
Button yes, no, maybe;
public void init() {
yes = new Button("Yes");
no = new Button ("No");
maybe = new Button("Undecided");
add(yes);
add(no);
add(maybe);
yes.addActionListener(this);
no.addActionListener(this);
maybe.addActionListener(this);
}
public void actionPerformed(ActionEvent ae) {
String str = ae.getActionCommand();
if(str.equals("Yes"))
msg = "You pressed Yes.";
else if(str.equals("No"))
msg = "You pressed No.";
else
msg = "You pressed Undecided.";
repaint ();
}
public void paint(Graphics g) {
g.drawString(msg, 6, 100);
}
}
Пример вывода программы ButtonDemo показан на рис. 2.

Рис. 2. Кнопки
В дополнение к сравнению текстовых меток можно также определять, какая кнопка была нажата, сравнивая объект, полученный от метода getSource(), с объектами кнопок, которые добавлены к окну. Чтобы это сделать, нужно сохранять список объектов во время их добавления. Данный подход показывает следующий апплет: