Java JRadioButton MenuItem

Chapter: Swing Last Updated: 14-10-2016 10:38:02 UTC

Program:

            /* ............... START ............... */
                
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ItemEvent;
import java.awt.event.KeyEvent;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import static javax.swing.JFrame.EXIT_ON_CLOSE;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JRadioButtonMenuItem;

public class JavaJRadioButtonMenuItem extends JFrame {

	private JLabel statusbar;

	public JavaJRadioButtonMenuItem() {

		initUI();
	}

	private void initUI() {

		createMenuBar();

		statusbar = new JLabel("Easy");
		statusbar.setBorder(BorderFactory.createEtchedBorder());
		add(statusbar, BorderLayout.SOUTH);

		setTitle("JRadioButtonMenuItem");
		setSize(360, 250);
		setLocationRelativeTo(null);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
	}

	private void createMenuBar() {

		JMenuBar menubar = new JMenuBar();
		JMenu difMenu = new JMenu("Difficulty");
		difMenu.setMnemonic(KeyEvent.VK_F);

		ButtonGroup difGroup = new ButtonGroup();

		JRadioButtonMenuItem eaRMi = new JRadioButtonMenuItem("Easy");
		eaRMi.setSelected(true);
		difMenu.add(eaRMi);

		eaRMi.addItemListener((ItemEvent e) -> {
			if (e.getStateChange() == ItemEvent.SELECTED) {
				statusbar.setText("Easy");
			}
		});

		JRadioButtonMenuItem meRMi = new JRadioButtonMenuItem("Medium");
		difMenu.add(meRMi);

		meRMi.addItemListener((ItemEvent e) -> {
			if (e.getStateChange() == ItemEvent.SELECTED) {
				statusbar.setText("Medium");
			}
		});

		JRadioButtonMenuItem haRMi = new JRadioButtonMenuItem("Hard");
		difMenu.add(haRMi);

		haRMi.addItemListener((ItemEvent e) -> {
			if (e.getStateChange() == ItemEvent.SELECTED) {
				statusbar.setText("Hard");
			}
		});

		difGroup.add(eaRMi);
		difGroup.add(meRMi);
		difGroup.add(haRMi);

		menubar.add(difMenu);

		setJMenuBar(menubar);
	}

	public static void main(String[] args) {

		EventQueue.invokeLater(() -> {
			JavaJRadioButtonMenuItem ex = new JavaJRadioButtonMenuItem();
			ex.setVisible(true);
		});
	}
}
                /* ............... END ............... */
        

Output


Java JRadioButton MenuItem

Notes:

  • JRadioButtonMenuItem enables to select from a mutually exclusive list of options. Selecting a particular JRadioButtonMenuItem deselects all other items. JRadioButtonMenuItems are placed into a ButtonGroup.

Tags

JRadioButton MenuItem, Swing, Java

Similar Programs Chapter Last Updated
Java JOptionPane ShowConfirmDialog Swing 21-06-2017
Java JOptionPane ShowInputDialog Swing 21-06-2017
Java JOptionPane Warning Message Swing 20-06-2017
Java JOptionPane ShowMessageDialog Swing 20-06-2017
Java JList Events With ListSelectionListener Swing 18-06-2017
Java System Color Chooser Swing 22-09-2018
JCheckBoxMenuItem With ItemListener Swing 16-06-2017
JCheckBoxMenuItem Events With ActionListener Swing 16-06-2017
Java JCheckBoxMenuItem SetMnemonic Swing 16-06-2017
JMenuItem Disable Menuitem Swing 12-06-2017
Java Drop Down Menus Example Swing 12-06-2017
JMenuItem Events With An ActionListener Swing 12-06-2017
Java JTable With Tooltip Swing 08-06-2017
Java JTable Manually Positioning Swing 08-06-2017
Java Resize SplitPane Swing 25-12-2016
Java SplitPane Example Swing 25-12-2016
Java JSeparator Example Swing 17-12-2016
Java JScrollPane Example Swing 17-12-2016
Java JTable Example Swing 17-12-2016
Java JToolBar Example Swing 17-12-2016
Java JEditorPane Example Swing 17-12-2016
Java JColorChooser Example Swing 17-12-2016
Java JToggleButton Example Swing 17-12-2016
Java JRadioButtonMenuItem Example Swing 17-12-2016
Java JCheckBoxMenuItem Example Swing 17-12-2016
Java JButton Listener Swing 16-12-2016
Java Message Dialog Box Swing 15-12-2016
Java Input Dialog Box Swing 15-12-2016
Java Confirm Dialog Box Swing 15-12-2016
Java Popup Menu Swing 14-10-2016

1 2 3 4