source: tmcsimulator-scriptbuilder/trunk/src/old/SelectingToggle.java @ 10

Revision 10, 1.8 KB checked in by jdalbey, 9 years ago (diff)

SelectingToggle?.java. Demo program added to 'old' package. Shows how to use a JToggleButton which would be handy in the Event Pallete.

Line 
1package old;
2
3import java.awt.BorderLayout;
4import java.awt.Container;
5import java.awt.event.ActionEvent;
6import java.awt.event.ActionListener;
7import java.awt.event.ItemEvent;
8import java.awt.event.ItemListener;
9
10import javax.swing.AbstractButton;
11import javax.swing.ButtonModel;
12import javax.swing.JFrame;
13import javax.swing.JToggleButton;
14import javax.swing.event.ChangeEvent;
15import javax.swing.event.ChangeListener;
16
17/**
18 * Demonstration of a JToggleButton which stays selected when clicked.
19 *
20 * @author jdalbey
21 */
22public class SelectingToggle
23{
24
25    public static void main(String args[])
26    {
27        String title = "Selecting Toggle";
28        JFrame frame = new JFrame(title);
29        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
30        final JToggleButton toggleButton = new JToggleButton("Click Me");
31        ActionListener actionListener = new ActionListener()
32        {
33            public void actionPerformed(ActionEvent actionEvent)
34            {
35                AbstractButton abstractButton = (AbstractButton) actionEvent.getSource();
36                // The state of the button can be obtained from its model.
37                boolean selected = abstractButton.getModel().isSelected();
38                System.out.println("Action - selected=" + selected + "\n");
39                if (selected)
40                {
41                    toggleButton.setText("Click again to toggle Off");
42                }
43                else
44                {
45                    toggleButton.setText("Click me to toggle On");
46                }
47            }
48        };
49        toggleButton.addActionListener(actionListener);
50        Container contentPane = frame.getContentPane();
51        contentPane.add(toggleButton, BorderLayout.NORTH);
52
53        frame.setSize(300, 75);
54        frame.setVisible(true);
55    }
56}
Note: See TracBrowser for help on using the repository browser.