
Learn to interface C++ with XML in Qt Quick, balancing heavy processing in C++ with a mobile-friendly UI and enabling button-driven C++ calls.
Expose a C++ class as a context property to enable calling its methods from QML, then wire it in the main file and call regular methods, slots, and return values.
Use the connections element to route a red rectangle mouse signal to the green and blue rectangles. Enable multiple responses to one signal and preview C++ signal integration.
Connect C++ signals to QML slots via the connections component, exposing a CP signal sender through context properties and showcasing a timer-driven CP timer signal.
Explore how to use the Q_PROPERTY macro to propagate changes between C++ and QML by wrapping fields with getter, setter, and notify signal, and expose them as a context property.
Expose c++ data as a context object to qml by wrapping properties in a single class with qproperty. Show automatic updates from c++ to qml via a timer.
Learn how to call a JavaScript function from C++ in a Qt 5 QML project, using QVariant for the return value and QMetaObject::invokeMethod with root level JavaScript function.
Expose C++ data to the html layer with context properties, set context object, and use connections and the Q property to propagate changes, with optional JavaScript calls.
Learn how data converts between C++ and QML, translating basic types—string, date, number—and sequence types like lists and vectors, then map variant lists, maps, and structures to the QML side.
Learn how C++ basic types map to QML types and exchange data via signals and slots, including strings, URLs, colors, fonts, dates, and geometric types.
Explore how string, date, and number types transfer between C++ and Quark, including JavaScript date conversion, string arguments, and localization of date, time, and numbers.
Explore localizing dates and numbers in Qt 5 QML using date string methods, date to locale, and from local date string, with examples for German, French, Chinese, and English locales.
Convert c++ vectors and lists to QML arrays. Send data from QML to C++ and retrieve it back to display, using a CP class and QML context property.
Learn to pass QVariantList and QVariantMap between Qt C++ and QML, converting them to JavaScript arrays and objects, and invoke JavaScript from C++.
Review the Q to C++ data type mappings and how the html engine handles seamless transformations, including color, string, date, number, localization, sequence mappings, and variant lists and maps.
Develop a REST API client using QNetworkAccessManager to fetch jokes, parse JSON, and feed data to C++ and QML for dynamic display and removal.
Learn to download HTTP data from the internet with QNetworkAccessManager, QNetworkReply, and QNetworkRequest, parse the JSON value array for jokes, and expose results to QML.
Feed internet data into QML by building an HTML interface, exposing a C++ model via context properties, and initializing the engine to synchronize data with a list view.
Recaps the version one API client, using the network access manager to fetch HTTP data as JSON and bind it to XML via context properties, enabling updates for list views.
Expose C++ data to QML with a custom type, define and use objects and list properties, and learn about inherited, default, grouped, and attached properties, property value sources, and animations.
Register custom C++ types for QML using QML register type and expose properties via Q_PROPERTY, then implement a counter class with signals and a timer to start and stop.
Expose your C++ enums to QML by decorating them with Q_ENUM and registering the type, then access values like information, warning, debug, and message in QML.
Update the qt 5 qml intermediate counter demo to use an enum to control counting direction, exposing a counting class with qproperty and signal to qml, and preventing html instantiation.
Explore creating object and list property types from C++, exposing them to HTML components, including a football team model with players, setters, getters, and list management.
Design and expose a football team in C++ to QML as a list property, wrapping a vector of players with append, count, at, and clear operations.
Learn to work with inherited types from C++ classes and reflect them to HTML, creating striker and defender that extend a player class and registering them for QML and XML.
Enable default properties for C++ classes exposed to XML to allow adding players to teams without explicit property assignment, using the Q_CLASSINFO macro and default property settings as syntactic sugar.
Explore grouped properties in Qt 5 QML by wrapping player attributes in a details class, exposing it to QML, and accessing height, weight, and speed in the UI.
Learn to implement attached properties in Qt 5 QML to add timing features to items via a timer and attaching class, with interval and running properties and timer out signals.
Create a custom C++ class that inherits QML property value source, implements setTarget, and updates a QML property using a timer-driven random number generator with a max value.
Compare multiple registration methods to expose C++ types to QML, including register type for instantiation, uncreatable types, and types used as left-hand side of property binding.
Recaps how to register C++ types for XML and HTML exposure, model objects with list and default properties, and use attached properties and property value sources in Qt QML.
Explore practical ways to interface XML with C++ in Qt 5 QML, using context properties and objects, QML register types, and property features, with practice and documentation guidance.
Important note : There is an update of this course to Qt 6. If you're just starting out, that's what you should take. Take this if you have a specific reason to target Qt 5.
Qt Quick is the latest and greatest User Interface design technology from the Qt Framework. It is best known and used to build Fluid, Dynamic and cross platform user interfaces, that can run on Windows,Mac,Linux,Android,IOS and even embedded devices.
Qt Quick User interfaces can be easily extended or interfaced with a powerful C++ back end. Allowing you to take full advantage of what Qt has to offer.
This course will teach you various key techniques you need to know to make your powerful C++ back end and your shinny fluid Qt Quick User interface work together in one single piece of software product. You will be exposed to different facilities at your disposal in the Qt framework.Those will help you write Qt code in the recommended way. That is building fluid an eye catching UI in QML and connecting it a a powerful C++ code base for heavy operations.
The ideal student for the course is someone who already knows their way around both the C++ side of Qt and Qt Quick ; and is willing to learn how the two sides can communicate. So if you are rusty on either Qt C++ or Qt Quick(QML), please learn the basics first. If in doubt, do check my previous courses on both Qt C++ and Qt Quick.
You will take advantage of lots of straight to the point and easy to understand lectures, most of them backed by engaging demos for you to try out the concepts on your own right away.
If you're looking to learn how you can get your Qt C++ and QML code bases to connect and talk to each other, this course will get you up and running in the shortest amount of time possible.
The course starts right away getting your hands dirty doing things like Calling C++ methods from QML,Calling Javascript/QML methods from C++, Using Q_PROPERTY mechanism to propagate properties and changes between C++ and QML and more.
You then get to take a comprehensive look at how your data is transformed when you juggle it between QML and C++. Next we do a live demo; a REST API client that downloads data in C++ and feeds the data to Qt Quick for display. The course then dives in one of the most interesting topics of registering a type in C++ to be used and instantiated in Qt Quick. This will allow you to create your own QML types like Person, Car, Tomato,... On top of that you'll also learn how to make your own QML Apis more readable and usable by incorporating features like Object and List Properties,Default Properties, Attached Properties and Property Value Sources.
Qt is the platform choice for thousands of software projects and used by some of the most successful companies on the planet today. Learning how to make your C++ talk to your shiny Qt Quick UI will unlock the door to really using Qt the way it should be used today. Leveling up your skills as a Qt Developer.
Please check out some of the preview videos, and lets get you STARTED connecting your powerful C++ back end to a Dynamic and Fluid Qt Quick User Interface.