News:

Choose a design and let our professionals help you build a successful website   - ITAcumens

Main Menu

Creating Control Buttons with NetBeans IDE - Working with JRadioButton

Started by NAREN, Apr 21, 2008, 01:35 PM

Previous topic - Next topic

NAREN

Creating Control Buttons with NetBeans IDE

Working with JRadioButton

Working with radio buttons will be very similar to working with check boxes. We need to declare and add them to the content pane as follows:

  private void initComponents() {
    bgrBGColor = new javax.swing.ButtonGroup();
    rbBGRed = new javax.swing.JRadioButton();
    rbBGGreen = new javax.swing.JRadioButton();
    rbBGBlue = new javax.swing.JRadioButton();
    txtMsg = new javax.swing.JTextField();

    getContentPane().setLayout(null);

  setDefaultCloseOperation(
      javax.swing.WindowConstants.EXIT_ON_CLOSE);
    bgrBGColor.add(rbBGRed);
    rbBGRed.setText("BG Red");
    rbBGRed.addActionListener(new
          java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt)
{
        rbBGRedActionPerformed(evt);
      }
    });

    getContentPane().add(rbBGRed);
    rbBGRed.setBounds(30, 20, 160, 23);

.
.
.

    txtMsg.setText("This is some message");
    getContentPane().add(txtMsg);
    txtMsg.setBounds(30, 100, 240, 20);

    pack();
  }

Handling events for the respective radio buttons would be as follows:

  private void rbBGBlueActionPerformed(
      java.awt.event.ActionEvent evt) {
  // TODO add your handling code here:
    this.txtMsg.setBackground(java.awt.Color.BLUE);
    }

    private void rbBGGreenActionPerformed(
        java.awt.event.ActionEvent evt) {
  // TODO add your handling code here:
      this.txtMsg.setBackground(java.awt.Color.GREEN);
    }

    private void rbBGRedActionPerformed(
        java.awt.event.ActionEvent evt) {
  // TODO add your handling code here:
      this.txtMsg.setBackground(java.awt.Color.RED);
    }

At this moment I really didn't group any of the radio buttons. If you need to group the radio buttons and dynamically get the radio button selected within the group, you may need to proceed to the next section.

Working with JRadioButton and ButtonGroup together

When there are too many radio buttons and we want to group them according to their categories, we need "ButtonGroup" available in JFC. Let us see how to work with "ButtonGroups" in this section.

Defining "ButtonGroup" and "RadioButtons" would be very similar to the following:

  bgrBGColor = new javax.swing.ButtonGroup();
    bgrFGColor = new javax.swing.ButtonGroup();
    rbBGRed = new javax.swing.JRadioButton();
    rbBGGreen = new javax.swing.JRadioButton();
    rbBGBlue = new javax.swing.JRadioButton();
  .
  .
  .

Adding RadioButtons to the ButtonGroup would be similar to the following:

  bgrBGColor.add(rbBGRed);
    rbBGRed.setText("BG Red");
    rbBGRed.setActionCommand("Red");
    getContentPane().add(rbBGRed);
    rbBGRed.setBounds(30, 20, 160, 23);

To know the radio button selected from a button group at run-time, we need to write something like the following:

  String BGSelectedColor =
  this.bgrBGColor.getSelection().getActionCommand().toUpperCase();
    if (BGSelectedColor.equals("RED"))
  this.txtMsg.setBackground(java.awt.Color.RED);
    else if (BGSelectedColor.equals("GREEN"))
  this.txtMsg.setBackground(java.awt.Color.GREEN);
    else if (BGSelectedColor.equals("BLUE"))
  this.txtMsg.setBackground(java.awt.Color.BLUE);
nice games here