home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 November / Chip_1998-11_cd.bin / tema / Cafe / VCSAMPL.BIN / degrees.java < prev    next >
Text File  |  1997-09-08  |  5KB  |  186 lines

  1. import java.awt.*;
  2.  
  3. public class degrees extends java.applet.Applet {
  4.  
  5.     boolean FSelected;
  6.  
  7.     public void init() {
  8.  
  9.         //{{INIT_CONTROLS
  10.         GridBagLayout gridBagLayout;
  11.         gridBagLayout = new GridBagLayout();
  12.         setLayout(gridBagLayout);
  13.         setSize(226,95);
  14.         edit1 = new java.awt.TextField(15);
  15.         edit1.setBounds(33,24,24,23);
  16.         GridBagConstraints gbc;
  17.         gbc = new GridBagConstraints();
  18.         gbc.gridx = 0;
  19.         gbc.gridy = 0;
  20.         gbc.weightx = 1.0;
  21.         gbc.weighty = 1.0;
  22.         gbc.anchor = GridBagConstraints.SOUTH;
  23.         gbc.fill = GridBagConstraints.NONE;
  24.         gbc.insets = new Insets(0,0,0,0);
  25.         ((GridBagLayout)getLayout()).setConstraints(edit1, gbc);
  26.         add(edit1);
  27.         group1 = new CheckboxGroup();
  28.         Fahrenheit = new java.awt.Checkbox("Fahrenheit", group1, true);
  29.         Fahrenheit.setBounds(90,24,89,23);
  30.         gbc = new GridBagConstraints();
  31.         gbc.gridx = 1;
  32.         gbc.gridy = 0;
  33.         gbc.weightx = 1.0;
  34.         gbc.weighty = 1.0;
  35.         gbc.anchor = GridBagConstraints.SOUTHWEST;
  36.         gbc.fill = GridBagConstraints.NONE;
  37.         gbc.insets = new Insets(0,0,0,0);
  38.         ((GridBagLayout)getLayout()).setConstraints(Fahrenheit, gbc);
  39.         add(Fahrenheit);
  40.         clearbutton = new java.awt.Button();
  41.         clearbutton.setActionCommand("button");
  42.         clearbutton.setLabel("Clear");
  43.         clearbutton.setBounds(23,59,44,23);
  44.         clearbutton.setBackground(new Color(8421504));
  45.         gbc = new GridBagConstraints();
  46.         gbc.gridx = 0;
  47.         gbc.gridy = 1;
  48.         gbc.weightx = 1.0;
  49.         gbc.weighty = 1.0;
  50.         gbc.fill = GridBagConstraints.NONE;
  51.         gbc.insets = new Insets(0,0,0,0);
  52.         ((GridBagLayout)getLayout()).setConstraints(clearbutton, gbc);
  53.         add(clearbutton);
  54.         Celcius = new java.awt.Checkbox("Celcius", group1, false);
  55.         Celcius.setBounds(90,47,72,23);
  56.         gbc = new GridBagConstraints();
  57.         gbc.gridx = 1;
  58.         gbc.gridy = 1;
  59.         gbc.weightx = 1.0;
  60.         gbc.weighty = 1.0;
  61.         gbc.anchor = GridBagConstraints.NORTHWEST;
  62.         gbc.fill = GridBagConstraints.NONE;
  63.         gbc.insets = new Insets(0,0,0,0);
  64.         ((GridBagLayout)getLayout()).setConstraints(Celcius, gbc);
  65.         add(Celcius);
  66.         //}}
  67.  
  68.         FSelected = true;
  69.         edit1.requestFocus();
  70.  
  71.     
  72.         //{{REGISTER_LISTENERS
  73.         SymItem lSymItem = new SymItem();
  74.         Celcius.addItemListener(lSymItem);
  75.         Fahrenheit.addItemListener(lSymItem);
  76.         SymMouse lSymMouse = new SymMouse();
  77.         clearbutton.addMouseListener(lSymMouse);
  78.         //}}
  79.         validate();
  80.     }
  81.  
  82.     //{{DECLARE_CONTROLS
  83.     java.awt.TextField edit1;
  84.     java.awt.Checkbox Fahrenheit;
  85.     CheckboxGroup group1;
  86.     java.awt.Button clearbutton;
  87.     java.awt.Checkbox Celcius;
  88.     //}}
  89.  //-------------------------------------------------------------
  90.  // This file has been migrated from the 1.0 to 1.1 event model.
  91.  // This method is not used with the new 1.1 event model. You can 
  92.  // move any code you need to keep, then remove this method.
  93.  //-------------------------------------------------------------
  94.  // 
  95.  // 
  96.  //     public boolean handleEvent(Event event) {
  97.  //         if (event.id == Event.ACTION_EVENT && event.target == Celcius) {
  98.  //                 clickedCelcius();
  99.  //                 return true;
  100.  //         }
  101.  //         else
  102.  //         if (event.id == Event.ACTION_EVENT && event.target == Fahrenheit) {
  103.  //                 clickedFahrenheit();
  104.  //                 return true;
  105.  //         }
  106.  // 
  107.  //         return super.handleEvent(event);
  108.  //     }
  109.  //-------------------------------------------------------------
  110.  
  111.     void clickedFahrenheit(java.awt.event.ItemEvent event) {
  112.  
  113.         float degree;
  114.  
  115.         if(FSelected == true) return;
  116.  
  117.         try {
  118.             degree = (Float.valueOf(edit1.getText())).floatValue();
  119.         } catch(NumberFormatException e) { return; }
  120.  
  121.         if( degree <= 0 )
  122.             edit1.setBackground(Color.blue);
  123.         else if( degree >= 100 )
  124.                 edit1.setBackground(Color.red);
  125.              else edit1.setBackground(Color.white);
  126.  
  127.         edit1.setText(String.valueOf(1.8*degree+32));
  128.  
  129.         FSelected = true;
  130.  
  131.     }
  132.  
  133.     void clickedCelcius(java.awt.event.ItemEvent event) {
  134.  
  135.         float degree;
  136.  
  137.         if(FSelected == false) return;
  138.  
  139.         try {
  140.             degree = (Float.valueOf(edit1.getText())).floatValue();
  141.         } catch (NumberFormatException e) { return; }
  142.  
  143.         if( degree <= 32 )
  144.             edit1.setBackground(Color.blue);
  145.         else if( degree >= 212 )
  146.                 edit1.setBackground(Color.red);
  147.              else edit1.setBackground(Color.white);
  148.         edit1.setText(String.valueOf((degree-32.0)/1.8));
  149.  
  150.         FSelected = false;
  151.     }
  152.  
  153.     class SymItem implements java.awt.event.ItemListener
  154.     {
  155.         public void itemStateChanged(java.awt.event.ItemEvent event)
  156.         {
  157.             Object object = event.getSource();
  158.             if (object == Celcius)
  159.                 clickedCelcius(event);
  160.             else if (object == Fahrenheit)
  161.                 clickedFahrenheit(event);
  162.         }
  163.     }
  164.  
  165.     class SymMouse extends java.awt.event.MouseAdapter
  166.     {
  167.         public void mouseClicked(java.awt.event.MouseEvent event)
  168.         {
  169.             Object object = event.getSource();
  170.             if (object == clearbutton)
  171.                 clearbutton_MouseClick(event);
  172.         }
  173.     }
  174.  
  175.     void clearbutton_MouseClick(java.awt.event.MouseEvent event)
  176.     {
  177.         // to do: code goes here.
  178.              
  179.         //{{CONNECTION
  180.         // Set the text for TextField...
  181.         edit1.setText("");
  182.         edit1.setBackground(Color.white);
  183.         //}}
  184.     }
  185. }
  186.