QWidget vs Qt Quick For phone app development

Well I've been coding in qt for about 6 months now and I have a pretty good grasp of QWidget and c++ coding for desktop apps but I run a small company and we are developing phone apps and desktop apps for a project that we are doing and as the project manager I fell that qt is the answer for not having to have separate teams coding for android and iPhone.

So the solution is coding in qt. but I'm a little confused about a few things. I see that a lot of the event handling of button clicks and things are handled actually in qt quick but as our apps would be quite complex in the bg we would have to be able to code in c++ the QWidget conventional way. So my question is:

  1. Which is better QWidget or Qt quick better for developing our apps which should be compatible across most platforms, mostly tablet and smart phones.

  2. If we go the qt Quick way then can you simultaneously use qt quick for most of the visual and then link up these files to c++ files (the engine of your app)? m if so any examples of how I might get started on learning how to do this.

  3. Is there any really good resources on how to develop these phone apps, tutorials and things like that, as I'm a little worried about the lack of resources for learning.

  4. Am I correct in thinking that if we did go with qt quick that these apps would also be compatible with Ubuntu phone?


  1. I've developed applications for maemo and meego, and I'd say that QtQuick is better and much easier.

  2. I'd say that QML and C++ qt-backend introduces an MVC pattern where QML is View and C++ is model and controller. QML is not just a script you can run. You need an object of QDeclarativeScript in C++ and pass main qml file to it to be able to start. So, anyway you will run C++ application first, which will parse QML script. To the last part of question: you may create C++ classes to export into QML and use it there. It is very simple, you may read official guides of QtQuick, it is goodly explained there.

  3. Here is nothing special. Simply import files into qml-project and just use controls, containers and etc. Each project, be it ubuntu phone or sailfish, have a tutorials, guides and wiki. More, I'm KDE contributor and developed plasma widgets on QML - the same thing here, - all you need is to import and just use.

  4. Of course. Why not? But you need to have a toolchain for QtCreator to be able to compile your project for target architecture and be able to run it there.

Need Your Help

Exceptions not catching for vectors

c++ visual-studio-2010 visual-studio try-catch std

I have tried to find this question elsewhere, but the problem I'm having still doesn't make sense to me. I'm using Visual C++ 2010 and my program is having out of range errors with vectors. The pro...

c++ program crash when executing the function that allocates memory

c++ pointers memory-management

To be honest, this is an homework assignment, which is about pointers and dynamic memory allocation. This program simulates the manipulation of file directories. Since it contains several files, so I