import java.applet.Applet; import java.awt.*; import java.awt.event.*; /** * Take a Strin from the user and reverse it using a stack * * @author Mr J * @version 20050211 */ public class ReverseMe extends Applet implements ActionListener { // sample awt objects private TextField name = new TextField("Type text here!"); private Button pressMe = new Button("Reverse me!"); private Label greeting = new Label("The message will appear here"); // Data members CharacterStack stack = new CharacterStack(); /** * Add objects to the Applet */ public void init() { add(name); add(pressMe); add(greeting); // Causes button presses to be detected pressMe.addActionListener(this); } /** * When an event occurs on an object with an ActionListener attached, this * method is carried out. * * @param e carries details about the event that occurred */ public void actionPerformed(ActionEvent e) { // push each character on to the stack String text = name.getText(); for (int p = 0; p < text.length(); p++) { stack.push(text.charAt(p)); } // pop each one off and add to String String reverse = ""; while (!stack.isEmpty()) { reverse = reverse + stack.pop(); } greeting.setText(reverse); } }