Перейти к содержимому

User interfaces with PyQt

Jonas Lindemann

0:00 / 0:00

User interfaces with PyQt

116 просмотров · 9 дн. назад
Jonas Lindemann
989 подписчиков
116 просмотров · 9 дн. назад
User interfaces with PyQt Timestamps: 00:00 - Introduction & Motivation for GUIs in Research 02:35 - Qt Architecture & Python Bindings (PySide6, PyQt6, QtPy) 05:48 - Core Concepts: Widgets & The Event Loop 12:56 - Minimal Qt Program (`QApplication`, `QWidget`, `app.exec()`) 15:58 - Subclassing `QWidget` & Window Initialization 19:47 - Adding Controls & Connecting Signals to Slots 23:08 - Handling Exceptions in Slots 27:00 - Slot Naming Conventions & Qt Signals Documentation 29:16 - Widget Properties: Visibility, Enabled State & Tooltips 32:43 - Why Layouts Matter (High DPI & Dynamic Resizing) 34:13 - Box Layouts: `QVBoxLayout` and `QHBoxLayout` 36:40 - Nesting Layouts & Adding Stretch Springs 39:41 - Grid Layouts (`QGridLayout`) & Form Layouts (`QFormLayout`) 41:58 - `QMainWindow`: Menus, Toolbars, Docks & Status Bars 44:18 - Common Widgets: Checkboxes, Sliders & Spinboxes 47:20 - Robust Numeric Input: Double Spinbox vs. Line Edit Validators 49:40 - Centralizing GUI Commands with `QAction` 53:43 - Dockable Toolbars in Qt 54:50 - Built-in Dialogs: Message Boxes & File Dialogs 57:30 - Software Architecture: Model-View-Controller (MVC) 01:00:15 - Case Study: Simply Supported Beam GUI Implementation 01:03:10 - Displaying Tabular Data: `QTableWidget` vs. `QTableView` 01:06:30 - Custom Table Models with Sorting 01:08:31 - Embedding Matplotlib Plots in Qt (`FigureCanvasQTAgg`) 01:10:10 - Real-Time Plotting with PyQtGraph & Custom 2D Graphics View 01:12:00 - Interactive 3D Visualization using PyVista & VTK 01:14:20 - Preventing GUI Freezes: Non-Blocking Computations 01:16:03 - Solving Freezes with Timers vs. Worker Threads (`QThread`) 01:17:20 - Safe Multi-Threading: Worker Architecture with Qt Signals 01:21:16 - Python GIL Considerations & Concurrency Options 01:22:04 - Designing UIs Visually: Qt Designer & Loading `.ui` Files 01:26:13 - Compiling to Executables with PyInstaller 01:27:17 - Using AI Assistants Effectively for GUI & Model Code 01:32:07 - Summary of Best Practices & Next Lecture Preview