Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Python GUI Programming with Tkinter

You're reading from   Python GUI Programming with Tkinter Develop responsive and powerful GUI applications with Tkinter

Arrow left icon
Product type Paperback
Published in May 2018
Publisher Packt
ISBN-13 9781788835886
Length 452 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Alan D. Moore Alan D. Moore
Author Profile Icon Alan D. Moore
Alan D. Moore
Arrow right icon
View More author details
Toc

Table of Contents (17) Chapters Close

Preface 1. Introduction to Tkinter 2. Designing GUI Applications with Tkinter FREE CHAPTER 3. Creating Basic Forms with Tkinter and ttk Widgets 4. Reducing User Error with Validation and Automation 5. Planning for the Expansion of Our Application 6. Creating Menus with Menu and Tkinter Dialogs 7. Navigating Records with Treeview 8. Improving the Look with Styles and Themes 9. Maintaining Cross-Platform Compatibility 10. Creating Automated Tests with unittest 11. Improving Data Storage with SQL 12. Connecting to the Cloud 13. Asynchronous Programming with Thread and Queue 14. Visualizing Data Using the Canvas Widget 15. Packaging with setuptools and cx_Freeze 16. Other Books You May Enjoy

Modifying the record form for read and update


As long as we're editing views, we'll need to look at our DataRecordForm view and adjust it to make it capable of updating records.

Take a moment and consider the following changes we'll need to make:

  • The form will need some way to load in a record provided by the controller.
  • The form will need to keep track of what record it's editing, or if it's a new record.
  • Our user will need some visual indication of what record is being edited.
  • Our Save button is currently in the application. It doesn't really make sense in any context other than the form, so it should probably be part of the form.
  • This means our form will need a callback to call when the save button is clicked. We'll need to provide it with a callbacks dictionary like we did with our other views.

Updating __init__()

Let's start working through these with our __init__() method:

    def __init__(self, parent, fields, 
                 settings, callbacks, *args, **kwargs):
        self.callbacks...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime