import java.applet.*; import java.awt.*; import java.io.*; import java.util.*; public class Skeleton extends Applet implements Runnable { private Thread kicker = null; TextField textField; List eList; Button stopIt; Button b; int nEvent=0; public void init() { setLayout(new BorderLayout()); textField = new TextField("Enter text here"); add("North", textField); eList = new List(); add("Center", eList); stopIt = new Button("Stop!"); add ("South", stopIt); b = new Button("L"); add("West", b); } public void start() { kicker = new Thread(this); kicker.start(); } public void stop() { eList.addItem("stopped"); kicker.stop(); } public void run() { while(true) { try{ kicker.sleep(5000); } catch(Exception e){ eList.addItem("Exception " + e); } } } public boolean action(Event e, Object arg) { nEvent ++; if(e.target == stopIt) stop(); else eList.addItem(Integer.toString(nEvent) + " Event " + e); return true; // Event handled } public void paint(Graphics g) { Dimension d = size(); g.drawRect(0, 0, d.width-1, d.height-1); } } // L.Allison, Dept. Computer Science, Monash University, Australia 3168 // from Tortsen Seemann's skeleton! 4/1996