I'm working on a simple program, but I help with a part of it. When I click the submit button I need the name field to be cleared and for all of the checkbox to be unchecked. I have the name field done, but I need help with unchecking all of the checkboxes.

Thanks for the help.

-jdm

package Gui2;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

 class Gui2 extends JFrame implements ActionListener, ItemListener
{
    //declares all the variables for use in my program.
    private JCheckBox [] CheckBox;

    String[] ButtonText = { "Taco $0.99", "Burrito $1.29", "Enchilada $1.39",
                            "Nachos $1.19", "Salad $2.09", "Tea $2.00"};

    private JButton submitButton;

    private JTextField NameField;
    private JTextArea Info;

    private JLabel NameLabel, TopLabel, TextAreaTitle, AmtDue;
    private JPanel TextFieldPanel, CheckBoxPanel, TextAreaPanel, TextAreaPanel2,
            ButtonPanel, NorthBorder, WestBorder, EastBorder, TopPanel, TextLabelPanel,
            GridLeft, GridRight, InnerRightGrid, InnerRightBorder, IRGinnerBorder,
            BlankPanel, GRBGrid, NameFlowPanel, NameFlowPanel2, TextAreaFlowPanel,
            TATFlowPanel;

    private double price = 0;

    private final double taco = 0.99;
    private final double burrito = 1.29;
    private final double enchilada = 1.39;
    private final double nachos = 1.19;
    private final double salad = 2.09;
    private final double tea = 2.00;

    private Container contentPane;

    //The normal main making
    public static void main(String [] args)
    {
        Gui2 frame = new Gui2();
        frame.setVisible(true);
    }//end of main

    public Gui2()
    {
        //detailing the JFrame
        setTitle("Britton's TexMex Cafe Order Form");
        setSize(400,500);
        setLocation(200,200);
        setResizable(false);

        contentPane = getContentPane();
        contentPane.setLayout(new BorderLayout());

        //makes the button
        submitButton = new JButton("Submit Order");
        submitButton.addActionListener(this);

        //makes and sets the name for the label
        NameLabel = new JLabel("Type your name in the box below");

        //makes the text field
        NameField = new JTextField();
        NameField.setColumns(21);
        NameField.addActionListener(this);

        //makes the checkbox
        CheckBox = new JCheckBox[ButtonText.length];

        //makes the very top label
        TopLabel = new JLabel("Please Place Your Order for Britton's Cafe");
        Font font = new Font("Arial", Font.BOLD, 17);
        TopLabel.setFont(font);

        //makes the info in the cyan TextArea
        Info = new JTextArea("Britton's Cafe, located in the north-    west corner"
                + " of Tennessee near the       community of Martin, specializes in"
                + "    Mexican food with a TexMex flavor."
                + "                                                       ");

        Info.setBackground(Color.cyan);
        Info.setLineWrap(true);
        Info.setEditable(false);
        Info.setColumns(21);

        //for future use with the listener outputs the price
        AmtDue = new JLabel("Amount Due: $" + price);
        AmtDue.setForeground(Color.red);

        //makes the label above the cyan textarea
        TextAreaTitle = new JLabel("Specializing in TexMex Food");
        TextAreaTitle.setForeground(Color.blue);

        //creats all the panels used in the frame
        //TAT stands for TextAreaTitle
        TATFlowPanel = new JPanel();
        TATFlowPanel.setLayout(new FlowLayout());
        TATFlowPanel.add(TextAreaTitle);

        NorthBorder = new JPanel();
        NorthBorder.setLayout(new BorderLayout());
        NorthBorder.setBackground(Color.orange);

        WestBorder = new JPanel();
        WestBorder.setLayout(new BorderLayout());

        EastBorder = new JPanel();
        EastBorder.setLayout(new BorderLayout());

        GridLeft = new JPanel();
        GridLeft.setLayout(new GridLayout(2,0));

        GridRight = new JPanel();
        GridRight.setLayout(new GridLayout(2,0));

        InnerRightGrid = new JPanel();
        InnerRightGrid.setLayout(new GridLayout(2,0));

        InnerRightBorder = new JPanel();
        InnerRightBorder.setLayout(new BorderLayout());

        //IRG stands for InnerRightGrid
        IRGinnerBorder = new JPanel();
        IRGinnerBorder.setLayout(new BorderLayout());

        TopPanel = new JPanel();
        TopPanel.setLayout(new FlowLayout());
        TopPanel.setBackground(Color.orange);
        TopPanel.add(TopLabel);

        CheckBoxPanel = new JPanel();
        CheckBoxPanel.setLayout(new GridLayout(0,1));

        for (int i = 0; i < CheckBox.length; i++)
	{
		CheckBox[i] = new JCheckBox(ButtonText[i]);
		CheckBoxPanel.add(CheckBox[i]);
                CheckBox[i].addItemListener(this);
        }

        CheckBoxPanel.setBorder(BorderFactory.createTitledBorder("Make Selections" ));

        NameFlowPanel = new JPanel();
        NameFlowPanel.setLayout(new FlowLayout());
        NameFlowPanel.add(NameLabel);

        TextLabelPanel = new JPanel();
        TextLabelPanel.setLayout(new BorderLayout());
        TextLabelPanel.add(NameFlowPanel, BorderLayout.NORTH);

        NameFlowPanel2 = new JPanel();
        NameFlowPanel2.setLayout(new FlowLayout());
        NameFlowPanel2.add(NameField);

        TextFieldPanel = new JPanel();
        TextFieldPanel.setLayout(new BorderLayout());
        TextFieldPanel.add(NameFlowPanel2, BorderLayout.SOUTH);

        ButtonPanel = new JPanel();
        ButtonPanel.setLayout(new BorderLayout());
        ButtonPanel.add(submitButton, BorderLayout.SOUTH);

        TextAreaFlowPanel = new JPanel();
        TextAreaFlowPanel.setLayout(new FlowLayout());
        TextAreaFlowPanel.add(Info);
        TextAreaPanel = new JPanel();
        TextAreaPanel.setLayout(new BorderLayout());
        TextAreaPanel.add(TextAreaFlowPanel);

        TextAreaPanel2 = new JPanel();
        TextAreaPanel2.setLayout(new FlowLayout());
        TextAreaPanel2.setBackground(Color.yellow);
        TextAreaPanel2.add(AmtDue);

        //GRB stands for GridRightBorder
        GRBGrid = new JPanel();
        GRBGrid.setLayout(new GridLayout(2,0));

        BlankPanel = new JPanel();
        BlankPanel.setLayout(new FlowLayout());

        //adding the basic panel to the frame
        contentPane.add(NorthBorder, BorderLayout.NORTH);
        contentPane.add(WestBorder, BorderLayout.WEST);
        contentPane.add(EastBorder, BorderLayout.CENTER);

        //stacking all the panels on each other to look right
        NorthBorder.add(TopPanel, BorderLayout.NORTH);

        WestBorder.add(GridLeft);

        GridLeft.add(CheckBoxPanel);

        GridLeft.add(ButtonPanel);

        EastBorder.add(GridRight);

        GridRight.add(InnerRightBorder);

        InnerRightBorder.add(TextLabelPanel, BorderLayout.NORTH);

        InnerRightBorder.add(InnerRightGrid, BorderLayout.CENTER);

        InnerRightGrid.add(IRGinnerBorder);

        IRGinnerBorder.add(TextFieldPanel, BorderLayout.NORTH);

        IRGinnerBorder.add(TATFlowPanel, BorderLayout.SOUTH);

        InnerRightGrid.add(TextAreaPanel);

        GridRight.add(GRBGrid);

        GRBGrid.add(BlankPanel);

        GRBGrid.add(TextAreaPanel2);

        setDefaultCloseOperation(EXIT_ON_CLOSE);
    }//end of GUI2

    public void actionPerformed(ActionEvent event)
    {

    //when the Submit Button is clicked the name is in the Namefield appears
    //in the yellow box.

    AmtDue.setText("Order Submitted by " + NameField.getText());
    NameField.setText(null);

    }

    public void itemStateChanged(ItemEvent event)
    {
        JCheckBox source = (JCheckBox) event.getSource();

               if (source == CheckBox[0])
               {
                   if(event.getStateChange() == ItemEvent.SELECTED)
                   price += taco;

                   else
                   price -= taco;

                   AmtDue.setText("Amount Due: $" + price);
 
               }

                else if(source == CheckBox[1])
               {
                   if(event.getStateChange() == ItemEvent.SELECTED)
                    price += burrito;

                   else
                    price -= burrito;

                   AmtDue.setText("Amount Due: $" + price);
               }

                else if(source == CheckBox[2])
               {
                   if(event.getStateChange() == ItemEvent.SELECTED)
                    price += enchilada;

                   else
                    price -= enchilada;

                   AmtDue.setText("Amount Due: $" + price);
               }

                else if(source == CheckBox[3])
               {
                   if(event.getStateChange() == ItemEvent.SELECTED)
                    price += nachos;

                   else
                    price -= nachos;

                   AmtDue.setText("Amount Due: $" + price);
               }

                else if(source == CheckBox[4])
               {
                   if(event.getStateChange() == ItemEvent.SELECTED)
                    price += salad;

                   else
                    price -= salad;

                   AmtDue.setText("Amount Due: $" + price);
               }

                else if(source == CheckBox[5])
               {
                   if(event.getStateChange() == ItemEvent.SELECTED)
                    price += tea;

                   else
                    price -= tea;

                   AmtDue.setText("Amount Due: $" + price);
               }
    }
}

Edited 5 Years Ago by jdm: n/a

if(myCheckBox.isSelected()){
myCheckBox.setSelected(false);
}

Thanks for the help.

This question has already been answered. Start a new discussion instead.