Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
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
Mastering GUI Programming with Python

You're reading from   Mastering GUI Programming with Python Develop impressive cross-platform GUI applications with PyQt

Arrow left icon
Product type Paperback
Published in May 2019
Publisher Packt
ISBN-13 9781789612905
Length 542 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 (24) Chapters Close

Preface 1. Section 1: Deep Dive into PyQt FREE CHAPTER
2. Getting Started with PyQt 3. Building Forms with QtWidgets 4. Handling Events with Signals and Slots 5. Building Applications with QMainWindow 6. Creating Data Interfaces with Model-View Classes 7. Styling Qt Applications 8. Section 2: Working with External Resources
9. Working with Audio-Visual Using QtMultimedia 10. Networking with QtNetwork 11. Exploring SQL with Qt SQL 12. Section 3: Unraveling Advanced Qt Implementations
13. Multithreading with QTimer and QThread 14. Creating Rich Text with QTextDocument 15. Creating 2D Graphics with QPainter 16. Creating 3D Graphics with QtOpenGL 17. Embedding Data Plots with QtCharts 18. PyQt Raspberry Pi 19. Web Browsing with QtWebEngine 20. Preparing Your Software for Distribution 21. Answers to Questions 22. Upgrading Raspbian 9 to Raspbian 10
23. Other Books You May Enjoy

Using model-view widgets without SQL

Having used QSqlQueryModel in the last section, you might wonder whether this approach can be further generalized to just access tables directly and avoid having to write SQL queries altogether. You also might wonder if we can get around the read-only limitations of QSqlQueryModel. The answer to both questions is yes, thanks to QSqlTableModel and QSqlRelationalTableModels.

To see how these work, let's back up and start over with our application:

  1. Start with a fresh template copy, calling it coffee_list2.py. Add the import for QtSql and the database connection code from the first application. Now let's start building using table models. For simple situations where we want to create a model from a single database table, we can use QSqlTableModel:
self.reviews_model = qts.QSqlTableModel()
self.reviews_model.setTable('reviews&apos...
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 €18.99/month. Cancel anytime