home *** CD-ROM | disk | FTP | other *** search
/ Java by Example / jbecd.bin / JBE-CD / NTUsers / JBECODE.ZIP / JavaByExample / chap24 / DialogApplet.java < prev    next >
Text File  |  1996-03-08  |  2KB  |  99 lines

  1. import java.awt.*;
  2. import java.applet.*;
  3.  
  4. public class DialogApplet extends Applet
  5. {
  6.     DialogFrame frame;
  7.     Button button;
  8.  
  9.     public void init()
  10.     {
  11.           frame = new DialogFrame("Dialog Window");
  12.  
  13.           button = new Button("Show Window");
  14.           add(button);
  15.     }
  16.  
  17.     public boolean action(Event evt, Object arg)
  18.     {
  19.         boolean visible = frame.isShowing();
  20.         if (visible)
  21.         {
  22.             frame.hide();
  23.             button.setLabel("Show Window");
  24.         }
  25.         else
  26.         {
  27.             frame.show();
  28.             button.setLabel("Hide Window");
  29.         }
  30.  
  31.         return true;
  32.     }
  33. }
  34.  
  35. class DialogFrame extends Frame
  36. {
  37.     MenuBar menuBar;
  38.     Dialog dialog;
  39.     TextField textField;
  40.     String str;
  41.  
  42.     DialogFrame(String title)
  43.     {
  44.         super(title);
  45.  
  46.         menuBar = new MenuBar();
  47.         setMenuBar(menuBar);
  48.         Menu menu = new Menu("Test");
  49.         menuBar.add(menu);
  50.         MenuItem item = new MenuItem("Dialog box");
  51.         menu.add(item);
  52.  
  53.         str = "";
  54.     }
  55.  
  56.     public void paint(Graphics g)
  57.     {
  58.         resize(300, 250);
  59.  
  60.         g.drawString("THE TEXT YOU ENTERED IS:", 70, 50);
  61.         g.drawString(str, 70, 70);
  62.     }
  63.  
  64.     public boolean action(Event evt, Object arg)
  65.     {
  66.         if (evt.target instanceof MenuItem)
  67.         {
  68.             if (arg == "Dialog box")
  69.                 ShowDialogBox();
  70.         }
  71.         else if (evt.target instanceof Button)
  72.         {
  73.             if (arg == "OK")
  74.             {
  75.                 dialog.hide();
  76.                 str = textField.getText();
  77.                 repaint();
  78.             }
  79.         }
  80.  
  81.         return true;
  82.     }
  83.  
  84.     protected void ShowDialogBox()
  85.     {
  86.         dialog = new Dialog(this, "Test Dialog", true);
  87.         FlowLayout layout = new FlowLayout();
  88.         dialog.setLayout(layout);
  89.  
  90.         textField = new TextField("", 20);
  91.         Button button = new Button("OK");
  92.         dialog.add(button);
  93.         dialog.add(textField);
  94.  
  95.         dialog.show();
  96.         dialog.resize(200, 100);
  97.     }
  98. }
  99.