The JMenuBar Class
Swing’s JMenuBar
class supersedes the older AWT
MenuBar class. This class creates a horizontal
menubar component with zero or more menus attached to it.
JMenuBar uses the
DefaultSingleSelectionModel as its data model;
this is because the user can raise, or
activate, only one of its menus at a given
time. Once the mouse pointer leaves that menu, the class removes the
menu from the screen (or cancels it, in Swing
lingo), and all menus again become eligible to be raised. Figure 14.4 shows the class hierarchy for the
JMenuBar component.

Figure 14-4. A sample of Swing menu effects
You can add JMenu objects from the menubar with
the
add()
method of the
JMenuBar class. JMenuBar then
assigns an integer index based on the order in which the menus were
added. The menubar displays the menus from left to right on the bar
according to their assigned index. There is one exception: the help
menu. You are allowed to mark one menu as the help menu; the location
of the help menu is up to the look-and-feel.
Note
As of JDK 1.2 beta 4, the help menu feature was not implemented.
Menubar Placement
You
can attach menubars to Swing frames or applets in one of two ways.
First, you can use the
setJMenuBar()
method of JFrame, JDialog,
JApplet, or JInternalFrame:
JFrame frame = new JFrame("Menu"); JMenuBar menuBar = new JMenuBar(); // Attach the menu bar to the frame frame.setJMenuBar(menuBar); ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access