title: JButton action listener issue. Slider values being displayed in fields
body: <p>So I have a program that is due tomorrow and I have held out as long as I can trying to figure out what is wrong with my code. First and biggest issue that has had me stumped for quiet a while is my reset buttons action listener. It just wont compile properly and says value not found? I commented it out so I could at least run the program you should be able to see clearly where I commented them out at. Also second issue is I have to make one text field display the MAX value between the two sliders when moving them and the other give me the TOTAL value between the two sliders. I honestly don't know what to do for the logical end of that and just simply attached both jtextfields to the left slider. For this I would appreciate a push in the right direction?  If you give me code I would be much appreciated but I would also like to explain why it works/ what was wrong with my code. Thanks!</p>
  
  <pre><code>import javax.swing.*;
  import javax.swing.event.*;
  import java.awt.*;
  
  
  /**
     This class displays a window with a slider component.
     The user can slide the left or right slider. As the 
      sliders are adjusted it displays the maximum sound 
      level coming from either slider as well as the total.
  */
  
  public class SoundLevels extends JFrame
  {
     private JLabel label1, label2, label3, label4;     // Message labels
     private JTextField maxSound;     // Max Sound Level
     private JTextField totalSound;   // Total Sound Level
     private JPanel mpanel;           // Max sound level panel
     private JPanel tpanel;           // Total sound level panel
     private JPanel sliderPanel1;     // Slider panel 1
      private JPanel sliderPanel2;     // Slider panel 2
      private JPanel resetpanel;       // Reset button panel
     private JSlider slider1;         // Left sound adjuster
      private JSlider slider2;         // Right sound adjuster
      private JButton resetButton;     // Reset button
     /**
        Constructor
     */
  
     public SoundLevels()
     {
        // Set the title.
        setTitle("Sound Levels");
  
        // Specify an action for the close button.
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
          //Creates reset button
          resetButton = new JButton("Reset");
  
        // Create the message labels.
        label1 = new JLabel("Left:  ");
        label2 = new JLabel("Right: ");
          label3 = new JLabel("Max:   ");
          label4 = new JLabel("Total: ");
  
        // Create the read-only text fields.
        maxSound = new JTextField("0", 10);
        maxSound.setEditable(false);
        totalSound = new JTextField("0", 10);
        totalSound.setEditable(false);
  
        // Create the slider.
        slider1 = new JSlider(JSlider.HORIZONTAL, 0, 100, 0);
          slider2 = new JSlider(JSlider.HORIZONTAL, 0, 100, 0);
        slider1.addChangeListener(new SliderListener());
  
        // Create panels and place the components in them.
        mpanel = new JPanel();
          resetpanel = new JPanel();
          tpanel = new JPanel();
          sliderPanel1 = new JPanel();
          sliderPanel2 = new JPanel();
  
          //Add components to panels
          mpanel.add(label1);
        mpanel.add(maxSound);
  
          tpanel.add(label2);
        tpanel.add(totalSound);
  
          sliderPanel1.add(label1);
        sliderPanel1.add(slider1);
  
          sliderPanel2.add(label2);
          sliderPanel2.add(slider2);
  
          resetpanel.add(resetButton);           
  
        // Initialize event listener
  //      resetButton.addActionListener(new ResetButtonListener());
  
  
          // Sets window to a border layout format.
        setLayout(new GridLayout(1, 5));
  
  
        // Add the panels to the content pane.
        add(sliderPanel1);
          add(sliderPanel2);
          add(resetpanel);
          add(mpanel);
        add(tpanel);
  
  
        // Pack and display the frame.
        pack();
        setVisible(true);
     }
  
     /**
        Private inner class that handles the event when
        the user clicks the Reset button.
     */
  
  /* COMMENTED THIS OUT SO IT AT LEAST RUNS   
        private class ResetButtonListener implements ActionListener
        {
           public void actionPerformed(ActionEvent e)
           {
           // Set the panel's background to red.
              max = 0;  //should reset sliders to 0
                  total = 0; //should reset sliders to 0
           }
        }
  */   
  
     /**
        Private inner class to handle the change events
        that are generated when the slider is moved.
     */
  
     private class SliderListener implements ChangeListener
     {
        public void stateChanged(ChangeEvent e)
        {
           int max, total;             
  
           // Get the slider value.
           max = slider1.getValue();
              total = slider1.getValue();
  
           // Store the total sound level in its display field.
           totalSound.setText(Integer.toString(total));
  
           // Store the max sound level in its display field.
           maxSound.setText(Integer.toString(max));
        }
     }
  
     /*
        The main method creates an instance of the
        class, which displays a window with a slider.
     */
  
     public static void main(String[] args)
     {
        new SoundLevels();
     }
  }
  </code></pre>