// Fig. 11.10: MyFrame.java // Creating a subclass of Frame. import java.applet.Applet; import java.awt.*; import java.awt.event.*; import com.deitel.jhtp2.ch11.ColorFrame; import com.deitel.jhtp2.ch11.CloseWindowAndExit; public class MyFrame extends Applet implements ActionListener { private ColorFrame f; private Button showFrame; public void init() { showFrame = new Button( "Show frame" ); add( showFrame ); showFrame.addActionListener( this ); f = new ColorFrame( "Select a color" ); } public void actionPerformed( ActionEvent e ) { f.setVisible( true ); // show the frame } // Allow this applet to run as an application also public static void main( String args[] ) { // create application Frame and resize Frame app = new Frame( "Application" ); app.setSize( 300, 100 ); // register window handler to terminate application app.addWindowListener( new CloseWindowAndExit() ); // create applet instance MyFrame m = new MyFrame(); // initialize and start the applet m.init(); m.start(); // add applet to center of Frame app.add( m, BorderLayout.CENTER ); // display the frame (everything attached is painted) app.setVisible( true ); } }