Book description
Master GUI programming in Tkinter as you design, implement, and deliver ten real-world applications from start to finish
About This Book
- Conceptualize and build state-of-art GUI applications with Tkinter
- Tackle the complexity of just about any size GUI application with a structured and scalable approach
- A project-based, practical guide to get hands-on into Tkinter GUI development
Who This Book Is For
Software developers, scientists, researchers, engineers, students, or programming hobbyists with basic familiarity in Python will find this book interesting and informative. People familiar with basic programming constructs in other programming language can also catch up with some brief reading on Python. No GUI programming experience is expected.
What You Will Learn
- Get to know the basic concepts of GUI programming, such as Tkinter top-level widgets, geometry management, event handling, using callbacks, custom styling, and dialogs
- Create apps that can be scaled in size or complexity without breaking down the core
- Write your own GUI framework for maximum code reuse
- Build apps using both procedural and OOP styles, understanding the strengths and limitations of both styles
- Learn to structure and build large GUI applications based on Model-View-Controller (MVC) architecture
- Build multithreaded and database-driven apps
- Create apps that leverage resources from the network
- Learn basics of 2D and 3D animation in GUI applications
- Develop apps that can persist application data with object serialization and tools such as configparser
In Detail
Tkinter is the built-in GUI package that comes with standard Python distributions. It is a cross-platform package, which means you build once and deploy everywhere. It is simple to use and intuitive in nature, making it suitable for programmers and non-programmers alike.
This book will help you master the art of GUI programming. It delivers the bigger picture of GUI programming by building real-world, productive, and fun applications such as a text editor, drum machine, game of chess, media player, drawing application, chat application, screen saver, port scanner, and many more. In every project, you will build on the skills acquired in the previous project and gain more expertise.
You will learn to write multithreaded programs, network programs, database driven programs and more. You will also get to know the modern best practices involved in writing GUI apps. With its rich source of sample code, you can build upon the knowledge gained with this book and use it in your own projects in the discipline of your choice.
Style and approach
An easy-to-follow guide, full of hands-on examples of real-world GUI programs. The first chapter is a must read as it explains most of the things you need to get started with writing GUI programs with Tkinter. Each subsequent chapter is a stand-alone project that discusses some aspects of GUI programming in detail. These chapters can be read sequentially or randomly depending upon the readers experience with Python.
Table of contents
-
Tkinter GUI Application Development Blueprints
- Table of Contents
- Tkinter GUI Application Development Blueprints
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Preface
-
1. Meet Tkinter
- Objectives of this chapter
- Installing Python and Tkinter
- Importing Tkinter
- GUI programming – the big picture
- The root window – your drawing board
- Widgets – the building blocks of GUI programs
- The Tkinter geometry manager
- Events and callbacks – adding life to programs
- Handling widget-specific variables
- Event unbinding and virtual events
- Doing it in style
- Some common root window options
- Summary
-
2. Making a Text Editor
- Objectives of the chapter
- An overview of the chapter
- Setting up the editor skeleton
- Adding a menu and menu items
- Implementing the View menu
- Adding a built-in functionality
- Indexing and tagging
- Implementing the Select All feature
- Implementing the Find Text feature
- Types of Toplevel windows
- Working with forms and dialogs
- Working with message boxes
- The icons toolbar and View menu functions
- Displaying the line number
- Adding the cursor information bar
- Adding themes
- Creating the context/pop-up menu
- Summary
-
3. Programmable Drum Machine
- An overview of the chapter
- Module requirements for the chapter
- Setting up the GUI in OOP
- Finalizing the data structure
- Creating broader visual elements
- Loading drum samples
- Playing the drum machine
- Tkinter and threading
- Support for multiple beat patterns
- Saving beat patterns
- Working with ttk-themed widgets
- Summary
-
4. A Game of Chess
- An overview of the chapter
- Structuring our program
- Modeling the data structures
- Creating a Piece class
- Making the game functional
- Managing user preferences
- Summary
-
5. Building an Audio Player
- An overview of the chapter
- External library requirements
- Program structure and broadview skeleton
- Deciding the data structure
- Creating the Player class
- Adding and removing items from a playlist
- Playing audio and adding audio controls
- Creating a seek bar
- One-time updates during audio playback
- Managing continuous updates
- Looping over tracks
- Adding a tooltip
- Summary
-
6. Paint Application
- Creating a tiny framework
- Setting up a broad GUI structure
- Dealing with mouse events
- Adding toolbar buttons
- Drawing items on the canvas
- Adding a color palette
- Adding top bar options for draw methods
- Drawing irregular lines and super shapes
- Adding functionality to the remaining buttons
- Adding functionality to menu items
- Summary
- 7. Multiple Fun Projects
-
8. Miscellaneous Tips
- Chapter objectives
- Tracing Tkinter variables
- Widget traversal
- Validating user input
- Formatting widget data
- More on fonts
- Redirecting the command-line output to Tkinter
- The class hierarchy of Tkinter
- Tips for program design
- Tips for program optimization
- Distributing a Tkinter application
- The limitations of Tkinter
- Tkinter in Python 2.x
- Summary
- Index
Product information
- Title: Tkinter GUI Application Development Blueprints
- Author(s):
- Release date: November 2015
- Publisher(s): Packt Publishing
- ISBN: 9781785889738
You might also like
book
Tkinter GUI Application Development Blueprints - Second Edition
Geometry Management, Event Handling, and more About This Book A Practical, guide to learn the application …
book
Learning Python Application Development
Take Python beyond scripting to build robust, reusable, and efficient applications About This Book Get to …
book
Tkinter GUI Programming by Example
Leverage the power of Python and its de facto GUI framework to build highly interactive interfaces …
book
Python GUI Programming - A Complete Reference Guide
Explore Python's GUI frameworks and create visually stunning and feature-rich applications Key Features Integrate stunning data …