O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Python GUI Projects

Video Description

Master GUI programming using Python

In Detail

One cannot ignore the benefits of a well-designed architecture and graphical user interface for applications. In this Learning Path we will use one of the most powerful language–Python–to aid us in creating powerful enterprise-ready applications.

The learning path begins with teaching important programming concepts of Python along with giving you the step-by-step approach of creating applications. In the initial part of the Learning Path we will be focusing creating applications, the later part of the Learning Path focuses on a powerful GUI package-Tkinter that comes with standard Python distributions. 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.

After completing this Learning Path, you will have successfully created 14 high-end GUI applications, and will be capable of building many more powerful and scalable applications.

Prerequisites: This course requires that you know how to write programs in Python.

Resources: Code downloads and errata:

  • Python Projects

  • Tkinter GUI Application Development Projects

  • PATH PRODUCTS

    This path navigates across the following products (in sequential order):

  • Python Projects (2h 19m)

  • Tkinter GUI Application Development Projects (4h 51m)

  • Table of Contents

    1. Chapter 1 : Python Projects
      1. The Course Overview 00:05:30
      2. Setting Up the Python Development Environment 00:09:32
      3. Getting Started with Python 00:04:55
      4. Setting Breakpoints 00:04:38
      5. Using the Pydev Debugger 00:07:03
      6. Creational Design patterns – The “Maze” Labyrinth Game in Python 00:09:18
      7. Creating the Maze in Python Using the Abstract Factory Design Pattern 00:05:47
      8. Creating the Maze in Python Using the Builder Design Pattern 00:08:42
      9. Creating the Maze in Python Using the Factory Prototype Design Pattern 00:12:51
      10. Introducing Tkinter 00:05:32
      11. Simple_GUI 00:10:22
      12. NOAA_Weather_Data 00:15:13
      13. OpenWeatherMap 00:07:30
      14. GettingDataHtml 00:05:31
      15. EmailingViaGmail 00:05:40
      16. Scheduling the Task 00:03:59
      17. TaskSchedulerSvc 00:09:25
    2. Chapter 2 : Tkinter GUI Application Development Projects
      1. The Course Overview 00:04:22
      2. Installing Python and Tkinter 00:04:04
      3. Importing Tkinter 00:01:53
      4. GUI Programming – the Big Picture 00:01:57
      5. The Root Window – Your Drawing Board 00:02:27
      6. Widgets – the Building Blocks of GUI Programs 00:08:47
      7. The Tkinter Geometry Manager 00:13:56
      8. Event and Callbacks – Adding Life to Programs 00:10:02
      9. Handling Widgets – Specific Variables 00:01:56
      10. Event Unbinding and Virtual Events 00:01:33
      11. Platform-Based Styling for Our Widgets 00:05:04
      12. Some Common Root Window Options 00:04:09
      13. Setting Up the Editor Skeleton 00:03:36
      14. Adding a Menu and Menu Items 00:07:33
      15. Implementing the View Menu 00:02:27
      16. Adding a Built-in Functionality 00:05:57
      17. Indexing and Tagging 00:05:25
      18. Implementing the Select All Feature 00:01:32
      19. Implementing the Find Text Feature 00:05:46
      20. Types of Top Level Windows 00:02:01
      21. Working with Forms and Dialogs 00:07:49
      22. Working with Message Boxes 00:03:18
      23. The Icons Toolbar and View Menu Functions 00:02:36
      24. Displaying the Line Number 00:06:15
      25. Adding the Cursor Information Bar 00:01:32
      26. Adding Themes 00:02:02
      27. Creating the Context/Pop-Up Menu 00:02:36
      28. Module Requirements for Programmable Drum Machine 00:03:34
      29. Setting Up the GUI in OOP 00:02:22
      30. Finalizing the Data Structure 00:02:52
      31. Creating Broader Visual Elements 00:09:09
      32. Loading Drum Samples 00:03:09
      33. Playing the Drum Machine 00:05:54
      34. Tkinter and Threading 00:05:10
      35. Support for Multiple Beat Patterns 00:02:21
      36. Saving Beat Patterns 00:06:04
      37. Working with the ttk-themed Widgets 00:09:54
      38. Structuring Our Program 00:09:31
      39. Modeling the Data Structures 00:04:26
      40. Creating a Piece Class 00:13:54
      41. Making the Game Functional 00:07:25
      42. Managing User Preferences 00:05:19
      43. External Library Requirements 00:03:50
      44. Program Structure and Broadview Skeleton 00:05:27
      45. Deciding the Data Structure and Creating the Player class 00:04:00
      46. Adding and Removing Items from a Playlist 00:03:58
      47. Playing Audio and Adding Audio Controls 00:04:22
      48. Creating a Seek Bar 00:04:33
      49. One-Time Updates during audio playback 00:02:18
      50. Managing Continuous Updates 00:02:29
      51. Looping Over Tracks 00:02:32
      52. Adding a Tooltip 00:03:45
      53. `Creating a Tiny Framework 00:07:19
      54. Setting Up a Broad GUI Structure 00:01:45
      55. Dealing with Mouse Events 00:01:58
      56. Adding Toolbar Buttons 00:03:44
      57. Drawing Items on the Canvas 00:07:35
      58. Adding a Color Palette 00:02:50
      59. Adding Top Bar Options for Draw Methods 00:04:03
      60. Drawing Irregular Lines and Super Shapes 00:04:10
      61. Adding Functionality to the Remaining Buttons 00:06:00
      62. Adding Functionality to Menu Items 00:03:24