Chapter 14. User Interfaces with Tk

Programming the X Window System is like trying to find the square root of pi using Roman numerals.

Anonymous

In this chapter, we learn how to build graphical user interfaces (GUIs) using one of the most feature-rich and professional-looking toolkits around: the Tk toolkit [Section 14.8]. We start with a brief tour of most of the Tk widgets as well some of the Tix extension and then learn about geometry management (how to arrange widgets on a form). Next, we briefly examine Perl’s support for timers, used extensively in Chapter 15. We then cover event bindings, which allow us to map arbitrary combinations of mouse and keyboard events to callbacks. Finally, we deal with event loop issues similar to the ones we studied in Chapter 12.

For the sake of simplicity, this chapter presents small snippets of code to illustrate the widgets and other Tk features in relative isolation; we will rely on the next two chapters to cut a broad swath through all these aspects and to apply them to practical problems.

While we are on the subject of building user interfaces, please do yourself (and your users) a favor by reading Alan Cooper’s[52] excellent and refreshingly opinionated book, About Face: The Essentials of User Interface Design [Section 14.8].

Introduction to GUIs, Tk, and Perl/Tk

At the most basic level, all windowing platforms (Apple Macintosh, X Windows, and Microsoft Windows) are very simple. They provide a low-level API to create and manage windows, ...

Get Advanced Perl Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.