//////////////////////////////////////////////// // // nelson.java // // LIS 533 Spring 1998 // // Four images are presented when buttons // are pressed. // ///////////////////////////////////////////////// import java.awt.*; import java.applet.*; public class nelson extends Applet { Image start, east, west, north, south; Label info; myCanvas putImage; Button eastButton, westButton, northButton, southButton; Panel Apanel, Bpanel, Cpanel; public void init() { //////////////////////////////////////////////// // get images // start = getImage(getDocumentBase(), "question.gif"); east = getImage(getDocumentBase(), "east.gif"); west = getImage(getDocumentBase(), "west.gif"); north = getImage(getDocumentBase(), "north.gif"); south = getImage(getDocumentBase(), "south.gif"); //////////////////////////////////////////////// // set layout // setLayout(new BorderLayout()); setBackground(Color.cyan); //////////////////////////////////////////////// // panels to hold label, canvas and buttons // Apanel = new Panel(); Apanel.setBackground(Color.cyan); info = new Label("Directional Signs", Label.CENTER); Apanel.add(info); add("North",Apanel); putImage = new myCanvas(start); putImage.resize(100,100); Bpanel = new Panel(); Bpanel.setBackground(Color.cyan); Bpanel.add(putImage); add("Center",Bpanel); eastButton = new Button("East"); westButton = new Button("West"); southButton = new Button("South"); northButton = new Button("North"); Cpanel = new Panel(); Cpanel.setLayout(new GridLayout(2,2)); Cpanel.add(eastButton); Cpanel.add(westButton); Cpanel.add(southButton); Cpanel.add(northButton); add("South",Cpanel); } // init public boolean action (Event e, Object arg) { if ("East".equals (arg)) { putImage.showThis(east); return true; } if ("West".equals (arg)) { putImage.showThis(west); return true; } if ("South".equals (arg)) { putImage.showThis(south); return true; } if ("North".equals (arg)) { putImage.showThis(north); return true; } return false; } // action } // end Nelson //////////////////////////////////////////////////////// // The class myCanvas // class myCanvas extends Canvas { Image resultImage; public myCanvas(Image image) { resultImage = image; } public Image showThis(Image image) { resultImage = image; repaint(); return resultImage; } public void paint(Graphics g) { g.drawImage(resultImage, 25, 10, this); } } // end myCanvas