O'Reilly logo

Game Programming using Qt 5 Beginner's Guide - Second Edition by Lorenz Haas, Witold Wysota, Pavel Strakhov

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Time for action – Registering C++ class as QML type

So far, what we did was expose ourselves to QML single objects created and initialized in C++. However, we can do much more—the framework allows us to define new QML types. These can either be generic QObject-derived QML elements or items specialized for Qt Quick.

We will start with something simple—exposing the CarInfo type to QML so that instead of instantiating it in C++ and then exposing it in QML, we can directly declare the element in QML and still allow the changes made to the widget to be reflected in the scene.

To make a certain class (derived from QObject) instantiable in QML, all that is required is to register that class with the declarative engine using the qmlRegisterType

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required