The Model View Architecture With Pyside6: Data Driven Uis
Published 6/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 7.15 GB | Duration: 12h 20m
Published 6/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 7.15 GB | Duration: 12h 20m
Build advanced UIs in Qt using Pyside6 with clean architecture, reusable components, and real data models.
What you'll learn
Build and connect Qt’s built-in models to views like QListView, QTableView, and QTreeView for dynamic, data-driven UIs.
Create custom models using QAbstractItemModel to support editing, dynamic rows, and custom roles in list, table, and tree formats.
Design custom delegates and editors for rich user interaction, including painting, editing, and a reusable star rating widget.
Build a complete Expense Tracker app with SQLite, applying models, views, delegates, and drag-and-drop in a real-world project.
Design and build desktop apps like inventory systems, project trackers, and media libraries that are fast, scalable, and user-friendly.
Architect clean, maintainable Qt applications by separating data, logic, and presentation using the Model/View approach.
Create responsive UIs that can handle complex data structures—without resorting to spaghetti code or manual widget management.
Gain the confidence to take on real-world client projects or jobs that require advanced Qt and Pyside6 UI development skills.
Requirements
Basic knowledge of Python (variables, functions, classes, pointers)
Basic experience with Qt Widgets and Pyside6 (layouts, signals & slots, basic UI setup)
Basic computer familiarity (Installing software, etc)
I'll teach you the rest!
Description
Build desktop apps like inventory systems, media libraries, project trackers, and finance tools—powered by Qt and and Python through PySide6. This course gives you the hands-on skills to master Qt’s powerful Model/View architecture so you can design UIs that are fast, scalable, and built to last.We start with the basics—Qt’s convenience widgets like QListWidget, QTableWidget, and QTreeWidget—to build a solid foundation. From there, we dive into essential built-in models:QFileSystemModel for navigating and interacting with the file systemQStringListModel for simple lists of dynamic dataQSortFilterProxyModel to sort and filter data without changing the underlying modelYou’ll then go deeper into custom model development using QAbstractItemModel:Read-only models for displaying external or static dataEditable models with support for user interactionModels that support adding/removing rows and custom data rolesTable models that mirror real-world tabular structuresTree models to manage hierarchical data like org charts or file explorersTo enhance interactivity and UX, you’ll build custom delegates and editors:Custom painting and editing using delegatesA reusable star rating widget and editorYou’ll also implement drag-and-drop:Between standard widgetsAt the item level within viewsIn fully custom modelsFinally, you’ll apply all your knowledge in a real-world course project: building an Expense Tracker UI backed by SQLite.By the end of this course, you’ll have the skills to build complex, data-driven applications such as inventory systems, project management tools, media libraries, personal finance apps, and configuration editors—all using Qt and PySide6.Whether you're a PySide6 beginner or a seasoned developer looking to deepen your skills, this course will take your PySide6 UI development to the next level.
Overview
Section 1: Introduction
Lecture 1 Welcome
Lecture 2 What You'll Build
Section 2: Introduction to Model/View Programming
Lecture 3 Starter
Section 3: Convenience View Widgets
Lecture 4 QListWidget
Lecture 5 QTableWidget
Lecture 6 QTreeWidget
Lecture 7 Chapter Project: Student Gradebook
Section 4: Built-in Models
Lecture 8 QFileSystemModel
Lecture 9 QStringListModel
Lecture 10 QSortFilterProxyModel
Section 5: Custom Models
Lecture 11 Custom Models Overview
Lecture 12 Custom Ready Only List Model
Lecture 13 Editable Models with Headers
Lecture 14 Adding and Removing Rows
Lecture 15 Custom Roles
Lecture 16 Chapter Project: Saving and Loading People
Section 6: Table Models and Delegates
Lecture 17 Custom Table Model
Lecture 18 Delegates and Editing
Lecture 19 Delegates and Painting
Lecture 20 Delegates: SizeHint
Lecture 21 Turn it Up a Notch: Custom Star Delegate Overview
Lecture 22 Custom Star Delegate: The User Interface
Lecture 23 Custom Star Delegate: The Star Editor
Lecture 24 Custom Star Delegate: Finally!
Lecture 25 Your Own Delegates: A Challenge!
Lecture 26 Chapter Project: Inventory Management System
Section 7: Drag and Drop
Lecture 27 Drag and Drop with Convenience Widgets
Lecture 28 Drag and Drop at Item Level
Lecture 29 Drag and Drop with Custom Models
Section 8: Tree Models: Laying the Ground
Lecture 30 Person Tree Structure: The Design
Lecture 31 Building the Tree Structure
Section 9: Building Actual Tree Models
Lecture 32 Concepts
Lecture 33 Custom Tree Model with In-Memory Data
Lecture 34 Custom Tree Model with Data From a File
Lecture 35 Full Editable Tree Model
Section 10: Course Project
Lecture 36 Expense Tracker Project
Lecture 37 Expense Tracker Project with SQLite
Section 11: Farewell
Lecture 38 Farewell
anyone who wants to build modern, data-driven desktop applications using PySide6,Developers building inventory systems, media libraries, or project tools,Embedded/UI engineers needing scalable data presentation,Python devs who want clean, modern UI architecture,Anyone who learns best by building real apps and solving real problems