QML for Beginners

Cross platform GUI application development on windows, mac and linux using QML, Qt 5, JavaScript and C++

4.61 (1179 reviews)
Udemy
platform
English
language
Other
category
instructor
16,762
students
13.5 hours
content
Dec 2020
last update
$79.99
regular price

What you will learn

QML for Qt 5 and 6

QML Language

Qt Quick

Items

Rectangles

Components

Anchors

Positioning

Transformations

Basic States

Layouts

Columns

Rows

Grids

Flexes

Absolute Positioning

Swipe View

Page View

List View

Custom Components

Properties

Bindings

Connections

Signals and Slots

Property Animations

Opacity Animations

Rotation Animations

Scale Animations

Sequential Animations

Parallel Animations

Qt Quick Controls

Model Views and Delegates

Pages

Passing Properties

Drag and Drop

Example Applications

Javascript basics

Inline JavaScript

Javascript bindings

External Javascript

C++ Integration

C++ Root Context

Registering C++ classes in QML

Calling C++ Slots from QML Signals

Calling QML Slots from C++ Signals

Image viewers

Text Editors

Data Converters

Number Generators

Common issues and solutions

Description

Write once, build anywhere – Qt runs on virtually anything. You probably have applications built with Qt running on your computer, smart phone, television, and other electronics.


This course targets Qt5 but is mostly compatible with Qt6 - I am in the process of recording the Qt6 material, anyone owning this course will get a free upgrade to the Qt6 version.


No experience with QML necessary, this is a beginners course that will teach you the foundations QML cross platform development. QML runs anywhere from desktops (windows, mac, linux) to cellphone, and embedded devices.

We will start with a short introduction to QML, and then rapidly move on to more complex topics such as layouts, properties and animations.

This course is specifically designed for Qt 5 with the QML beginner in mind. These videos take you from knowing nothing about QML to creating intermediate level applications using QML, JavaScript and C++. These videos build on the popular Qt Core series available on Udemy. These videos show many best practices and how to overcome common mistakes. About the author: Bryan has created  hundreds of Qt tutorials available on YouTube and has created official Qt training videos for the Qt Company. Full source code available on GitHub, and runs a Facebook community with thousands of developers that can offer free help 24x7.

Highly recommended that you have a strong foundation in Qt Core before attempting this course - fear not, I have other courses available on Udemy:

Qt 5 Core Beginners

Qt 5 Core Intermediate

Qt 5 Core Advanced

Content

Introduction to QML

What this course covers
What this course does not cover
QML vs Qt Quick
QML limitations
What can you make with QML
Qt5 vs Qt6
QML vs Qt Widgets
Write once build anywhere
Section 1 - Quiz

Exploring Qt Creator

Paid vs free
Qt Creator settings
Qt Creator kits
Qt Creator projects
Qt command line app
Qt widgets app
Multiple projects
QML example project
QML editor vs designer
Section 2 - Quiz

Diving into QML

Comments
Root object and IDs
QML objects vs QObjects
X, Y, Z positioning
Parent and child transformations
Object interaction - TapHandler

Basic types

Item type
Rectangle
Image
Text
MouseArea
Custom component
Section 4 - Quiz

Positioning and layouts

Object positioning using X, Y
Object positioning using Z
Column layout
Row layout
Grid layout
Flow layout
Anchors
Margins
Simple image viewer
Section 5 - Quiz

Properties and animations

Property and PropertyAnimation
Rotation and RotationAnimation
Scale and SequentialAnimation
Opacity and OpacityAnimator
SmoothedAnimation
Anti-aliasing
Keyboard input
Transform and Translate
Drag and drop
Section 6 - Quiz

Introducing the designer

Designer
Property editor
Connections and bindings
Connections and properties
States
Images in the designer
Section 7 - Quiz

Qt Quick

Qt Quick Controls
Label
BusyIndicator
Button
Checkbox
CheckDelegate in a ListView
ComboBox
DelayButton
Dial
Frames and Popups
GroupBox and RadioButton
Slider
RangeSlider
RoundButton
SpinBox
Switch
Tumbler
Simple login screen
TextArea in a ScrollView
Section 8 - Quiz

QML project templates

ScrollView application
StackView application
SwipeView application
Passing variables
Passing variables (alt method)
Section 9 - Quiz

JavaScript

JavaScript variables
JavaScript scope basics
JavaScript IF
JavaScript loops
JavaScript switch
JavaScript ternary
JavaScript functions
JavaScript more info
QML in-line JavaScript
QML JavaScript Functions
QML JavaScript Files
QML JavaScript Connections
Section 10 - Quiz

QML and C++ integration

QML and C++ intro
Call C++ slot from QML
Call a QML slot from C++
Register C++ class with QML
C++ integration example
Section 11 - Quiz

Custom components

Custom image button
Dynamically created number pad
Login component
Owner drawn ComboBox
Owner drawn ListView
Section 12 - Quiz

Example Applications

Square Footage Calculator
Number Converter
Dice Roller
Random Dinner Application
Image Viewer with C++
Text Editor with C++

Screenshots

QML for Beginners - Screenshot_01QML for Beginners - Screenshot_02QML for Beginners - Screenshot_03QML for Beginners - Screenshot_04

Reviews

Bhargavi
October 22, 2023
I like how original the course and the videos are! Good learning. Will follow up with other courses by same trainer.
Tihran
September 11, 2023
This course is very simple and very efficient for me as a viewer. I faced a work task that required me to dig into pretty complicated QML code and I was able to accomplish it just after 1 day of learning this course. Thanks a lot!
Henri
August 18, 2023
Took it as a quick jumpstart to some partially unfamiliar technologies used at a new workplace, and it was quite useful for that.
Dietbrand
June 20, 2023
This is a great course if you want to learn QML. Unfortunately, it still uses Qt5 and qmake instead of Qt6/CMake but you can definitely follow along and the syntax will not differ that much. Look forward to a Qt6 refresh someday. To Bryan: Your mini digressions and remarks were funny. I never heard dogs barking, cars passing and I hope you get a new keyboard!
Santi
May 16, 2023
Too much redundancy in typing of in the beginning each lesson. Could have streaming that a little bit and save some time.
Hannselthill
May 15, 2023
I'm not finished with the course just yet but so far it is a really good way to jumpstart your qml knowledge
Dmytro
January 21, 2023
Make assignments more complicated and add more questions on tests. But for all another, it is a good course, all the essential basic knowledge I got. Thank you.
Alan
October 6, 2022
It's a great course. You can follow it without knowing C++, but it's recommended. I can't wait for QML intermediate and advanced.
Fernando
August 18, 2022
I finished this course, but I lost interest halfway through. I was forced to skim through the Qt Quick section because it wasn't very interesting and it was very repetitive (starting from scratch everytime). A more engaging approach to this chapter would have been if instead we would build a complete interface while using most of the controls (something similar to the Car board QML sample). Most of the samples were not very engaging. The last video: Text Editor with C++ is why I came to this course. I think that if the rest of the examples were as complete as that one, the course would have been much more interesting.
Jun
August 4, 2022
Good for beginners, but hopefully can update some teaching about charts or tables. it would be more plentiful for beginners.
Christopher
June 14, 2022
Bryan explains every concept very clearly, and he also gives you guidance on how you can find out more about it. Watching his videos along with reading the documentation and doing your own projects will accelerate your learning by a lot. Getting this and other of his courses is some of the best money I've ever spent.
Christoph
May 6, 2022
Useful knowledge, interesting projects, the presentation makes it easy to follow along and feels like a personal coaching, unlike one of those dull courses where you listen to a tiring voice and time and again check the remaining minutes. So: Well done! :)
Cristian
April 21, 2022
Good introduction to QML. I appreciate that instructor types out pretty much all of the code in the examples. This is helpful since I like to type along with instructor and run the code myself every lesson.
Simon
April 8, 2022
It took waaaaaay too much time before getting into actual QML. iirc, 2 chapters talking about what it ISN'T instead of what it is.
Sercan
April 3, 2022
After what is explained in the tutorial, I would expect him to explain all the stages of an advanced application. In this way, students could better understand how they should proceed.

Coupons

DateDiscountStatus
11/18/2020100% OFF
expired
3/5/2021100% OFF
expired
4/24/2021100% OFF
expired

Charts

Price

QML for Beginners - Price chart

Rating

QML for Beginners - Ratings chart

Enrollment distribution

QML for Beginners - Distribution chart

Related Topics

2862626
udemy ID
3/10/2020
course created date
3/21/2020
course indexed date
Bot
course submited by