Java Reference
In-Depth Information
public void
displayMenu()
{
JMenuBar menuBar =
new
JMenuBar ( ) ;
menuBar . add(
new
GameMenu ( ) ) ;
menuBar . add(
new
ColorMenu () ) ;
menuBar . add(
new
SpeedMenu () ) ;
setJMenuBar(menuBar) ;
}
private class
GameMenu
extends
JMenu
{
{
public
GameMenu ( )
super
(
"Game"
);
JMenuItem startGameMI =
new
JMenuItem(
"Start"
,
);
startGameMI . setAccelerator (KeyStroke . getKeyStroke (KeyEvent .VK S,
InputEvent .CTRL MASK) ) ;
JMenuItem pauseMI =
new
JMenuItem(
"Pause"
,
'S'
);
pauseMI . setAccelerator (KeyStroke . getKeyStroke(KeyEvent .VKP,
InputEvent .CTRL MASK) ) ;
JMenuItem quitMI =
new
JMenuItem(
"Quit"
);
startGameMI. addActionListener(
new
ActionListener ()
'P'
{
public void
actionPerformed(ActionEvent e)
{
panel. start() ;
}
}
);
pauseMI. addActionListener(
new
ActionListener ()
{
public void
actionPerformed(ActionEvent e)
{
panel . pause() ;
}
}
);
quitMI . addActionListener(
new
ActionListener ()
{
public void
actionPerformed(ActionEvent e)
{
System. exit(0) ;
}
}
);
add(startGameMI) ;
add(pauseMI) ;
add(quitMI) ;
}
}
private class
ColorMenu
extends
JMenu
{
public
ColorMenu ()
{
super
(
"Ball Color"
);
for
(BallColor color : BallColor . values ())
{
JMenuItem menuItem =
new
JMenuItem( color . name() +
" Ball"
);
menuItem. addActionListener(
new
BallColorListener(color));
add(menuItem) ;
}
}
}
private class
BallColorListener
implements
ActionListener
{
private
BallColor color ;