Qt Qml

138 views

Published on

  • Be the first to comment

  • Be the first to like this

Qt Qml

  1. 1. QtQml
  2. 2. Outline • What is Qt ? • What is Qml? • Qml Elements • Qt creator • Qt on Android
  3. 3. What is Qt ? • Cross-platform GUI application framework • Written in C++ • Open Source • Qt modules: Qt Core, Qt GUI, Qt QML, Qt Quick, Qt Network, Qt Multimedia, Qt WebKit, Qt SQL … • Software developed by Qt – Perforce , tesla , VLC , google earth, Mathematica, jewelrybox …
  4. 4. What is Qml ? • Qt Meta Language • JavaScript-based, declarative language for designing user interface–centric app • Support by QtQuick (the standard library for writing QML applications) • Mainly for mobile app • Qml element easily to be extended by javascript and C++ class • Qml can use various qt modules
  5. 5. Qt Elements • Item– basic element • Rectangular – inherit from items • Component --encapsulated QML types • Animation • Model --contains the data and its structure • Delegate--dictates how the data should appear in the view • View--a container that displays the data – Pathview – Grid view – List view
  6. 6. Qt creator • IDE • Layout • Example : – calqlatr (java script) – Calendar (c++)
  7. 7. QML on Android • Support for native android style with Qt Quick Controls ,not yet included material design – http://doc.qt.io/qt-5/android-support.html – http://doc.qt.io/qt-5/qtquickcontrols- platformnotes.html#android-style • Support most of Qt modules: multimedia , sensor reading, GPS , bluetooth… – http://doc.qt.io/qt-5/examples-android.html • Develop on Qt creator
  8. 8. Qt Android Extras • The way to call the android java api • Example : qt notifier http://doc.qt.io/qt-5/qtandroidextras- notification-notificationclient-cpp.html • Qt thread & Android thread – http://www.kdab.com/qt-android-episode-7/
  9. 9. Pros • Cross-platform • powerful UI libraries • IDE: Qt Creator • Native-look • Performance is the same with (maybe better than) native app – Qt Core is written in high performance C++ – Utilize hardware acceleration – http://stackoverflow.com/questions/22460127/how-slow-or-fast-is-qt- mobile-for-android – http://www.developereconomics.com/cross-platform-apps-qt-vs- html5/ – http://v-play.net/2014/10/qt-vs-html5-cross-platform-apps/
  10. 10. cons • Size is large – 35MB for hello world – http://achipa.blogspot.tw/2014/11/native-ui-in- qt-on-android-without.html • Need to compile QMl • Licensing is confusing – https://blog.qt.io/blog/2009/11/30/qt-making- the-right-licensing-decision/

×