Chapter 14. Menus and Toolbars
This chapter discusses Swing menus and toolbars. Menus are by far the larger and more extensible of the two, so they encompass most of the chapter. Swing offers the programmer a fully reimplemented menu system from AWT 1.1. This re-engineering allows you to use the Swing menus in a variety of eye-catching ways, and provides much more freedom to lay out menu components.
Toolbars are a new addition to Swing. Toolbars allow the programmer to group buttons, combo boxes, and other components together in repositionable panels; these tools can assist the user in performing many common tasks. You can add any component to a Swing toolbar, even non-Swing components. In addition, Swing allows the toolbar to be dragged from the frame and positioned inside a child window for convenience.
Introducing Swing Menus
If
you’ve worked with menus before, you know that one of the most
frustrating issues with AWT is that almost all of
its menu components extend the abstract
java.awt.MenuComponent class. This is an awkward
design, as the remaining AWT components extend the
more versatile java.awt.Component class.
Consequently, menu components are divorced from regular components in
AWT, since subclasses of
MenuComponent can perform only a fraction of the
others’ functionality. In addition, AWT
programmers are locked into placing a single menubar at the top of
each Frame and cannot position menu components in
containers using layout managers.
With Swing, this hierarchy has been ...
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