As its name implies, the Menu widget is a widget that can hold many selectable options. Each option can be assigned a label, such as paste, and a command, which (like many other widgets) allows us to call a Python function when the user clicks on it.
We will be adding two different types of menus to our text editor in this chapter: a menu bar along the top of the window and a right-click context menu. Both are implemented using the same widget, but the way in which the widgets are added to the application differs.
Let's take some time to look at each method we will be using to add menus into our text editor, beginning with the top menu bar.