Menus are lists of commands from which the user can choose. Menus offer a convenient and consistent way to group commands and an easy way for users to access them. Commands for performing related tasks can be grouped on the same menu, and separator bars can be used to divide commands on a menu into logical groupings. Submenus offer additional levels of organization, and shortcut menus offer a way to group related commands that apply to the limited context of a specific task.
You can assign access keys to make commands accessible from the keyboard, and you can assign shortcut keys to provide the user even quicker access to the commands. In addition, menus take up less space than toolbars, as the items on a menu are displayed on demand and don't take up dedicated screen space. On the other hand, if you want quick, graphical access to a command, a toolbar may be a better choice.
Toolbars contain buttons that perform frequently used commands. Toolbars are ideal for presenting individual property settings (such as bold, italic, or font size), commands that are best represented visually, and commands you want to access with one click of the mouse. In addition, toolbars remain displayed while the user works, whereas menus are displayed only on demand; this makes scanning a toolbar for a particular button easier than scanning the menus on a menu bar for a particular command. However, if you need easy keyboard access to a command, if you want to display your commands hierarchically, or if you're short on screen space, a menu may be a better choice.
If you need to present a more complex set of options to the user, a dialog box may be a better choice than a toolbar or a menu. If you want to place a tool closer to the data the user is working with, the best solution may be to place a control directly on a worksheet or chart. Chapter 8, "Controls and Dialog Boxes," describes these user interface enhancements in detail.