//////////////////////////////////////////////////////////////// // // FourColors.java // // LIS533 Spring 1998 // // Places four buttons in a grid layout, each button // changes the color and message of a canvas. // // Object Version of the program // ///////////////////////////////////////////////////////////////// import java.awt.*; import java.applet.*; ///////////////////////////////////////////////////////////////////// // // FourColors class public class FourColors extends Applet { Button redButton, blueButton, greenButton, pinkButton; String displayString; Panel buttonPanel; myCanvas showCanvas; Label titleLabel; public void init() { setLayout(new BorderLayout()); displayString = "Four Colors are Available"; titleLabel = new Label(displayString, Label.CENTER); titleLabel.setForeground(Color.white); titleLabel.setBackground(Color.darkGray); add("North",titleLabel); showCanvas = new myCanvas(); showCanvas.setBackground(Color.cyan); add("Center",showCanvas); redButton = new Button("Red"); blueButton = new Button("Blue"); greenButton = new Button("Green"); pinkButton = new Button("Pink"); buttonPanel = new Panel(); buttonPanel.setLayout(new GridLayout(2,2)); buttonPanel.add(redButton); buttonPanel.add(blueButton); buttonPanel.add(greenButton); buttonPanel.add(pinkButton); add("South",buttonPanel); } // init public boolean action (Event e, Object arg) { if ("Red".equals (arg)) { showCanvas.doRed(); return true; } // Red button if ("Blue".equals(arg)) { showCanvas.doBlue(); return true; } // Blue button if ("Green".equals(arg)) { showCanvas.doGreen(); return true; } // green button if ("Pink".equals(arg)) { showCanvas.doPink(); return true; } // Pink button return false; } // action } // FourButtons /////////////////////////////////////////////////////////////////////////////// // // myCanvas class class myCanvas extends Canvas { colorMessage m; ///// Default constructor ////////////////////////////// public myCanvas() { m = new colorMessage("Please choose a color",Color.black); } /////////// Various methods //////////////////////////// public colorMessage doRed() { m = new colorMessage("Red Object!",Color.red); repaint(); return m; } public colorMessage doBlue() { m = new colorMessage("Blue Object!",Color.blue); repaint(); return m; } public colorMessage doGreen() { m = new colorMessage("Green Object!",Color.green); repaint(); return m; } public colorMessage doPink() { m = new colorMessage("Pink Object!",Color.pink); repaint(); return m; } public void paint (Graphics g) { g.setColor(m.putColor()); g.drawString(m.putString(), 40, 45); } } // myCanvas