FileDocCategorySizeDatePackage
ActionExample.javaAPI DocExample4199Thu Oct 24 20:14:20 BST 2002None

ActionExample

public class ActionExample extends JFrame

Fields Summary
public static final int
MIN_CHANNEL
public static final int
MAX_CHANNEL
private int
currentChannel
private int
favoriteChannel
private JLabel
channelLabel
private Action
upAction
private Action
downAction
private GotoFavoriteAction
gotoFavoriteAction
private Action
setFavoriteAction
Constructors Summary
public ActionExample()

    super("ActionExample");  
  
    setChannel(currentChannel); // enable/disable the Actions as appropriate

    channelLabel.setHorizontalAlignment(JLabel.CENTER);
    channelLabel.setFont(new Font("Serif", Font.PLAIN, 32));

    getContentPane().add(channelLabel, BorderLayout.NORTH);

    JPanel buttonPanel = new JPanel(new GridLayout(2, 2, 16, 6));
    buttonPanel.setBorder(BorderFactory.createEmptyBorder(6, 16, 16, 16));
    getContentPane().add(buttonPanel, BorderLayout.CENTER);
    buttonPanel.add(new JButton(upAction));
    buttonPanel.add(new JButton(gotoFavoriteAction));
    buttonPanel.add(new JButton(downAction));
    buttonPanel.add(new JButton(setFavoriteAction));

    JMenuBar mb = new JMenuBar();
    JMenu menu = new JMenu("Channel");
    menu.add(new JMenuItem(upAction));
    menu.add(new JMenuItem(downAction));
    menu.addSeparator();
    menu.add(new JMenuItem(gotoFavoriteAction));
    menu.add(new JMenuItem(setFavoriteAction));
    mb.add(menu);
    setJMenuBar(mb);
  
Methods Summary
public static voidmain(java.lang.String[] argv)

    JFrame f = new ActionExample();
    f.setSize(400, 180);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setVisible(true);
  
public voidsetChannel(int chan)

    currentChannel = chan;
    channelLabel.setText("Now tuned to channel: "+currentChannel);
    // enable/disable the Actions as appropriate
    downAction.setEnabled(currentChannel > MIN_CHANNEL);
    upAction.setEnabled(currentChannel < MAX_CHANNEL);
    gotoFavoriteAction.setEnabled(currentChannel != favoriteChannel);  
    setFavoriteAction.setEnabled(currentChannel != favoriteChannel);