Learning Python GUI Programming

Learning Python GUI Programming

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 6h 06m | 2.07 GB

Learn how to create effective graphical user interfaces (GUIs) with minimal code using Python. Burkhard Meier starts by showing how to create a GUI form, add widgets, manage the resulting layout, and customize the look and feel of the interface. Then, he takes you through working with data, classes, and making charts using the 2D Python plotting library, Matplotbil. Next, he discusses how threading and networking impact the performance of your code. Later in the course, he advances on to working with databases, testing application GUIs, extending a GUI using the wxPython library, and creating 3D GUIs by using PyOpenGL and Pyglet. As you follow along with Burkhard throughout this course, you will develop an entire application’s GUI.

Note: This course was created by Packt Publishing. We are pleased to host this training in our library.

Topics include:

  • Creating buttons and widgets
  • Adding labels and features
  • Expanding a GUI dynamically
  • Aligning frames and embedding frames
  • Creating menu bars, message boxes, and tooltips
  • Using module-level global variables
  • Coding in classes
  • Using Matplotlib to create charts
  • Working with multiple threads, queues, and TCP/IP
  • Using URLOpen to read data from websites
  • Localizing a GUI and preparing for internationalization
  • Testing a GUI using unit tests and Eclipse PyDev IDE
  • Using the wxPython library
  • Using Tkinter, PyOpenGL, and Pyglet
Table of Contents

01 – Introduction to Python GUI
02 – Adding a label to the GUI form
03 – Creating buttons and text box widgets
04 – Exploring widgets
05 – Adding extra features
06 – Adding several widgets in a loop
07 – Arranging several labels within a label frame
08 – Using padding to add space around widgets
09 – Expanding the GUI dynamically using widgets
10 – Aligning the GUI widgets by embedding frames within frames
11 – Creating menu bars
12 – Creating tabbed widgets
13 – Using the grid layout manager
14 – Creating message boxes
15 – Creating independent message boxes
16 – Creating the title and icon of the main root window
17 – Using a spinbox control
18 – Creating tooltips and using the canvas widget
19 – Using the StringVar() type
20 – Using module-level global variables
21 – Improving the GUI by coding in classes
22 – Creating reusable GUI components
23 – Creating beautiful charts using Matplotlb
24 – Downloading modules for Matplotlb
25 – Creating our first chart
26 – Placing labels on charts
27 – Giving the chart a legend
28 – Scaling charts
29 – Adjusting the scale dynamically
30 – Creating multiple threads
31 – Starting a thread
32 – Stopping a thread
33 – Using queues
34 – Passing queues among different modules
35 – Using dialog widgets to copy files to your network
36 – Using TCP IP to communicate via networks
37 – Using URLOpen to read data from websites
38 – Connecting to a MySQL database from python
39 – Configuring the MySQL connection
40 – Designing the Python GUI database
41 – Using the SQL INSERT command
42 – Using the SQL UPDATE command
43 – Using the SQL DELETE command
44 – Displaying widget text in different languages
45 – Changing the entire GUI language all at once
46 – Localizing the GUI
47 – Preparing the GUI for internationalization
48 – Designing a GUI in an agile fashion
49 – Do we need to test the GUI code
50 – Setting debug watches
51 – Configuring different debug output levels
52 – Creating self-testing code using the Python __main__ section
53 – Creating robust GUIs using unit tests
54 – Writing unit tests using the Eclipse PyDev IDE
55 – Installing the wxPython library
56 – Creating our GUI
57 – Adding controls
58 – Embedding the Tkinter and wxPython GUIs into each other
59 – Using Python to control two different GUI frameworks
60 – Communicating between the two connected GUIs
61 – Pyopengl transforms our GUI
62 – Our GUI in 3D
63 – Pyglet transforms our GUI more easily than PyOpenGL
64 – Creating a slideshow using Tkinter
65 – Avoiding spaghetti code
66 – Using __init__ to connect modules
67 – Mixing fall-down and OOP coding
68 – When not to use OOP
69 – Using design patterns successfully
70 – Avoiding complexity