Implementing Modern Apps with Qt Quick
Open Enrollment or On-Site Available!
This 3-day course focuses on developing modern applications for embedded systems and desktops using Qt Quick. The target audience is accustomed to the widget classes and is looking to implement UI using QML instead. It assumes a working knowledge of the Qt core and widget classes. The course will present the latest Qt Quick techniques for implementation of UI and UI behavior, the interaction between C++ and QML, user interaction, animations and state machines. Additionally you will learn debugging, profiling and unit testing techniques. The course includes hands-on lab assignments.
Contact laurie@ics.com for more information on scheduling.
Pre-Requisites
- Basic knowledge of programming with Qt on the desktop using widgets
- Basic knowledge of C++
Hardware Requirements
- You will need a laptop with the following with Qt version 5.x https://www.qt.io/download/
Agenda
Introduction to QML and Qt Quick
- Introduction to Qt Quick
- Qt Creator
- Qt Quick Hello World
- QML Concepts
- Composing User Interfaces
- Nested Elements
- Graphical Types
- Text Items
- Anchor Layout
- QML Components
- Dynamic Object Management in QML
Qt Quick Structures and User Interaction
- Qt Quick Structures
- Components
- Signals and Slots in QML
- Qt Quick Controls
- Modules
- User Interaction
- Mouse Input
- Touch Input
- Keyboard Input
Animations, States and Transitions
- Animations
- Easing Curves
- Animation Groups
- States and Transitions
- States
- State Conditions
- Transitions
Under the Hood - the Qt C++ Layer
- Integrating QML with C++
- Declarative Environment
- Exporting C++ Objects to QML
- Exporting Classes to QML
- Using Custom Types
- Plug-ins
Debugging and Unit Testing
- Notes on Debugging
- QML profiler
- Unit Testing
- Mocking QML UI