Java Reference
In-Depth Information
Creating a Menu System for the Classics on DVD Program
Recall how the menu system specified in the requirements document included
a menu bar with two commands and drop-down lists. Later in the program, the
main() method will call a method named createMenuBar(). The createMenuBar()
method, as shown in Figure 7-17, will declare and construct instances of the
JMenuBar, two JMenu commands, and several JMenuItems. The createMenuBar()
method takes no arguments but returns a completed JMenuBar item.
32
//create the menu system
33
public
JMenuBar createMenuBar
()
34
{
35
//create an instance of the menu
36
JMenuBar mnuBar =
new
JMenuBar
()
;
37
setJMenuBar
(
mnuBar
)
;
38
39
//construct and populate the File menu
40
JMenu mnuFile =
new
JMenu
(
"File"
,
true
)
;
41
mnuFile.setMnemonic
(
KeyEvent
.VK_F
)
;
42
mnuFile.setDisplayedMnemonicIndex
(
0
)
;
43
mnuBar.add
(
mnuFile
)
;
44
45
JMenuItem mnuFileExit =
new
JMenuItem
(
"Exit"
)
;
46
mnuFileExit.setMnemonic
(
KeyEvent
.VK_X
)
;
47
mnuFileExit.setDisplayedMnemonicIndex
(
1
)
;
48
mnuFile.add
(
mnuFileExit
)
;
49
mnuFileExit.setActionCommand
(
"Exit"
)
;
50
mnuFileExit.addActionListener
(
this
)
;
51
52
//construct and populate the Edit menu
53
JMenu mnuEdit =
new
JMenu
(
"Edit"
,
true
)
;
54
mnuEdit.setMnemonic
(
KeyEvent
.VK_E
)
;
55
mnuEdit.setDisplayedMnemonicIndex
(
0
)
;
56
mnuBar.add
(
mnuEdit
)
;
57
58
JMenuItem mnuEditInsert =
new
JMenuItem
(
"Insert New DVD"
)
;
59
mnuEditInsert.setMnemonic
(
KeyEvent
.VK_I
)
;
60
mnuEditInsert.setDisplayedMnemonicIndex
(
0
)
;
61
mnuEdit.add
(
mnuEditInsert
)
;
62
mnuEditInsert.setActionCommand
(
"Insert"
)
;
63
mnuEditInsert.addActionListener
(
this
)
;
64
65
JMenu mnuEditSearch =
new
JMenu
(
"Search"
)
;
66
mnuEditSearch.setMnemonic
(
KeyEvent
.VK_R
)
;
67
mnuEditSearch.setDisplayedMnemonicIndex
(
3
)
;
68
mnuEdit.add
(
mnuEditSearch
)
;
69
70
JMenuItem mnuEditSearchByTitle =
new
JMenuItem
(
"by Title"
)
;
71
mnuEditSearchByTitle.setMnemonic
(
KeyEvent
.VK_T
)
;
72
mnuEditSearchByTitle.setDisplayedMnemonicIndex
(
3
)
;
73
mnuEditSearch.add
(
mnuEditSearchByTitle
)
;
74
mnuEditSearchByTitle.setActionCommand
(
"title"
)
;
75
mnuEditSearchByTitle.addActionListener
(
this
)
;
76
77
JMenuItem mnuEditSearchByStudio =
new
JMenuItem
(
"by Studio"
)
;
78
mnuEditSearchByStudio.setMnemonic
(
KeyEvent
.VK_S
)
;
79
mnuEditSearchByStudio.setDisplayedMnemonicIndex
(
3
)
;
80
mnuEditSearch.add
(
mnuEditSearchByStudio
)
;
81
mnuEditSearchByStudio.setActionCommand
(
"studio"
)
;
82
mnuEditSearchByStudio.addActionListener
(
this
)
;
83
84
JMenuItem mnuEditSearchByYear =
new
JMenuItem
(
"by Year"
)
;
85
mnuEditSearchByYear.setMnemonic
(
KeyEvent
.VK_Y
)
;
86
mnuEditSearchByYear.setDisplayedMnemonicIndex
(
3
)
;
87
mnuEditSearch.add
(
mnuEditSearchByYear
)
;
88
mnuEditSearchByYear.setActionCommand
(
"year"
)
;
89
mnuEditSearchByYear.addActionListener
(
this
)
;
90
91
return
mnuBar;
92
}
93
FIGURE 7-17
Search WWH ::
Custom Search