πŸ’»
Programming Concept
  • πŸ‘¨β€πŸ”¬About Me
  • πŸ“—C++ STL Concept 2023
    • πŸ“–STL in CPP ( Part I)
    • πŸ“–STL in CPP ( Part II)
    • πŸ“–STL in CPP ( Part III )
    • πŸ“–STL in CPP ( Part IV )
    • πŸ“–STL in CPP ( Part V )
    • πŸ“–STL in CPP ( Part VI )
    • πŸ“–STL in CPP ( Part VII )
  • ✏️Pointers in C / C++
    • πŸ“–Pointers in details
  • πŸ“˜Strings in CPP 2023
  • πŸ•žThread in C++ 2023
  • πŸ““Smart Pointer in C++ 2023
  • Basic C++ Topics
    • πŸ’ΌType Casting in C++ 2023
  • πŸ’»Advanced C++ Programming
    • πŸŽ“Topics (Syllabus)
    • πŸ§‘β€πŸŽ“Inheritance and Polymorphism
    • πŸ–ŠοΈException Handling
    • πŸƒRuntime Type Information
    • πŸ“”An Overview of Templates
    • πŸ“‘Template in C++
  • πŸ’»Embedded Linux
    • πŸ–₯️Embedded Linux OS
      • Build Yocto Project Step By Step
      • How to install apt-get to the Yocto Project image
      • Installing gcc/g++ toolchain in yocto project
      • Installing GDB in yocto project
      • Installing ssh-server-dropbear for embedded linux in yocto project
      • Add Python To A Build
      • Add Boost To A Build
      • Adding Valgrind To Build
      • How To Add A Custom App To A Yocto Build
      • Raspberry Pi
    • πŸ“ΆCommunication Protocols
      • ✏️Working With I2C using c++
      • πŸ“”SPI Implementation with source code in C++
      • πŸ““Linux Serial Ports Using C/C++
      • πŸ–±οΈUART
      • πŸ–¨οΈUniversal GPIO Access
  • πŸ§‘β€πŸ’»QT QML
    • πŸ“˜QT QML Concept 2023
      • Why Qt Framework and QML
      • Sqlite3 for qtquick application
      • How To Install sqlite3 in windows 11 || Windows 10
      • Signals and Slots in Qt QML
      • Working with Signals and Slots in QML
      • Sorting QML ListModels
      • ListView In QML With Section Delegate
      • Registration of custom enum in QML
      • Registering a QML Type as a Singleton object
      • Using enumerations in QML without C ++
      • Registering a Singleton object to use β€œStatic” methods in QML
      • Connecting JavaScript files to other JavaScript files in a Qt / QML project
      • Positioning in Qt QML with anchors
      • TextInput validators in Qt Qml
      • Qt Qml Abstract Item Model using C++
      • Qt QML List Model
      • How to Register your C++ Class as a QML Type
      • Jabra Speaker Connect Qt Project
      • Qt | One article summarizing QObject
  • ▢️QT Concept
    • ℹ️Icon button
    • πŸ’»Register QML Singletone in CP
Powered by GitBook
On this page

Was this helpful?

  1. QT QML

QT QML Concept 2023

QML is a declarative language for designing user interfaces. It uses an XML-like syntax to declare UI components.

β€’ QML code has to be executed by a QML engine. The engine parses the QML, creates the UI objects, and executes the JS code.

β€’ QML uses a hierarchical component system. UI components are declared as child components of parent components.

β€’ Qt attached properties allow using C++ properties and methods in QML. They start with "Qt." prefix.

β€’ QML uses JavaScript for logic. JS functions can be defined and called from QML.

β€’ Properties in QML are used to set values for UI components. Properties can be bound to each other to realize two-way data binding.

β€’ Signals in QML are used to notify about events. Signals can be connected to JS functions to react to events.

β€’ Models in QML provide data to data-bound UI elements like ListViews and Combos. Models are defined in C++ and exposed to QML.

β€’ For animation and transitions, QML uses the Qt Animation framework. You define animations and transitions between states in QML.

β€’ QML UI components are defined in separate QML files. They can then be imported and used as custom components in other QML files.

β€’ C++ classes can be exposed to QML using the Q_OBJECT and Q_INVOKABLE macros to make methods callable from QML.

Hope this high-level overview helps clarify some of the main concepts in Qt QML! Let me know if you have any other questions.

PreviousUniversal GPIO AccessNextWhy Qt Framework and QML

Last updated 1 year ago

Was this helpful?

πŸ§‘β€πŸ’»
πŸ“˜