Book Image

Tkinter GUI Programming by Example

Book Image

Tkinter GUI Programming by Example

Overview of this book

Tkinter is a modular, cross-platform application development toolkit for Python. When developing GUI-rich applications, the most important choices are which programming language(s) and which GUI framework to use. Python and Tkinter prove to be a great combination. This book will get you familiar with Tkinter by having you create fun and interactive projects. These projects have varying degrees of complexity. We'll start with a simple project, where you'll learn the fundamentals of GUI programming and the basics of working with a Tkinter application. After getting the basics right, we'll move on to creating a project of slightly increased complexity, such as a highly customizable Python editor. In the next project, we'll crank up the complexity level to create an instant messaging app. Toward the end, we'll discuss various ways of packaging our applications so that they can be shared and installed on other machines without the user having to learn how to install and run Python programs.
Table of Contents (18 chapters)
Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
Index

Chapter 7. Not Just for Restaurants – All About Menus

To finish off our text editor, we will be adding menus. This includes a menu bar at the top of the application—the kind where you will find options such as file and edit—and a context menu, which typically appears when the user right-clicks.

Of course, along with the menus will come some new functionality. This includes the ability to control the styling of the application, the color scheme of the TextArea widget, the ability to open and save files, and more!

In this chapter, we will cover:

  • The Menu widget
  • Adding a menu to an application
  • Creating submenus inside a menu
  • Getting file information using the filedialog module
  • Using the colorchooser widget to get a color choice

Let's start with a look over Tkinter's Menu widget, since this is the main new widget we will be focusing on in this chapter.