import java.awt.*; import java.awt.event.*; import java.applet.*; public class InterruptApplet extends Applet { private ClockComp clock; private Button startButton; private Button intrButton; private Button stopButton; public void init() { clock = new ClockComp(); startButton = new Button("Start Clock Thread"); startButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { clock.start(); } }); intrButton = new Button("Interrupt Clock Thread"); intrButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // Just interrupt, don't set the flag clock.interruptOnly(); } }); stopButton = new Button( "Set Flag and Interrupt Clock Thread"); stopButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // Set the flag AND interrupt clock.stopRequest(); } }); //setLayout(new FlowLayout()); setLayout(new GridLayout(0, 1, 5, 5)); add(startButton); add(intrButton); add(stopButton); add(clock); } public void start() { } public void stop() { clock.stopRequest(); } public void destroy() { } }