H:\CSC120\Java\lec30\src\MUFrame.java
  1 /* CSC 120 Lecture # 30
  2  *
  3  *
  4  * EEK - Mice!
  5  * 
  6  */
  7 
  8 import java.awt.*;
  9 import javax.swing.*;
 10 
 11 public class MUFrame extends javax.swing.JFrame {
 12 
 13     private MUPanel muPanel;
 14     
 15     // declare private data here
 16     
 17     
 18     
 19     
 20     
 21     
 22     
 23     
 24     // constructor method
 25     public MUFrame() {
 26         initComponents();
 27         muPanel = new MUPanel();
 28         drawingPanel.add(muPanel);
 29         
 30         
 31         
 32         
 33     } // end of constructor
 34     
 35     // declare other mehtods here
 36     
 37     
 38     
 39     
 40 
 41     /** This method is called from within the constructor to
 42      * initialize the form.
 43      * WARNING: Do NOT modify this code. The content of this method is
 44      * always regenerated by the Form Editor.
 45      */
 46     @SuppressWarnings("unchecked")
 47     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
 48     private void initComponents() {
 49 
 50         drawingPanel = new javax.swing.JPanel();
 51         moveForwardButton = new javax.swing.JButton();
 52         turnAroundButton = new javax.swing.JButton();
 53 
 54         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
 55 
 56         drawingPanel.setPreferredSize(new java.awt.Dimension(600, 300));
 57 
 58         javax.swing.GroupLayout drawingPanelLayout = new javax.swing.GroupLayout(drawingPanel);
 59         drawingPanel.setLayout(drawingPanelLayout);
 60         drawingPanelLayout.setHorizontalGroup(
 61             drawingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 62             .addGap(0, 773, Short.MAX_VALUE)
 63         );
 64         drawingPanelLayout.setVerticalGroup(
 65             drawingPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 66             .addGap(0, 616, Short.MAX_VALUE)
 67         );
 68 
 69         moveForwardButton.setText("Move Forward");
 70         moveForwardButton.addActionListener(new java.awt.event.ActionListener() {
 71             public void actionPerformed(java.awt.event.ActionEvent evt) {
 72                 moveForwardButtonActionPerformed(evt);
 73             }
 74         });
 75 
 76         turnAroundButton.setText("Turn Around");
 77         turnAroundButton.addActionListener(new java.awt.event.ActionListener() {
 78             public void actionPerformed(java.awt.event.ActionEvent evt) {
 79                 turnAroundButtonActionPerformed(evt);
 80             }
 81         });
 82 
 83         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
 84         getContentPane().setLayout(layout);
 85         layout.setHorizontalGroup(
 86             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 87             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
 88                 .addComponent(drawingPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 773, javax.swing.GroupLayout.PREFERRED_SIZE)
 89                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 90                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 91                     .addComponent(moveForwardButton)
 92                     .addComponent(turnAroundButton))
 93                 .addGap(18, 18, 18))
 94         );
 95         layout.setVerticalGroup(
 96             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 97             .addGroup(layout.createSequentialGroup()
 98                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 99                     .addGroup(layout.createSequentialGroup()
100                         .addGap(78, 78, 78)
101                         .addComponent(moveForwardButton)
102                         .addGap(53, 53, 53)
103                         .addComponent(turnAroundButton))
104                     .addGroup(layout.createSequentialGroup()
105                         .addContainerGap()
106                         .addComponent(drawingPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 616, javax.swing.GroupLayout.PREFERRED_SIZE)))
107                 .addContainerGap(52, Short.MAX_VALUE))
108         );
109 
110         pack();
111     }// </editor-fold>                        
112 
113     private void moveForwardButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                  
114         muPanel.moveMiceForward();
115         muPanel.repaint();
116     }                                                 
117 
118     private void turnAroundButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                 
119         muPanel.turnMiceAround();
120         muPanel.repaint();    }                                                
121 
122     /**
123      * @param args the command line arguments
124      */
125     public static void main(String args[]) {
126         java.awt.EventQueue.invokeLater(new Runnable() {
127 
128             public void run() {
129                 new MUFrame().setVisible(true);
130             }
131         });
132     }
133     // Variables declaration - do not modify                     
134     private javax.swing.JPanel drawingPanel;
135     private javax.swing.JButton moveForwardButton;
136     private javax.swing.JButton turnAroundButton;
137     // End of variables declaration                   
138 }
139