I tried to use Qt5 but I find it very confusing.
I have good knowledge of c++(I would say between intermediate-expert level) but no knowledge of javascript or QML(only basic HTML)
When I go through the examples and tutorials provided with Qt, I find then more to be reference material or like "what's new" stuff for developers who are already using Qt. It shows me random(non systematic) parts of the vast Qt library.
I am currently more interested in using the Qt widget based apps rather than Qt QML based apps.
So this is what I want to ask.
Is QML the main language and C++ just a supporting language? in other words, is learning QML absolutely essential to use QT?
has using Qt for c++ based apps become a de-facto depreciated thing? Is Qt nowadays only used for QML apps?
What do I need to learn to be able to use Qt?
                        
I have developed a few Qt applications and to this day no knowledge whatsoever about
qml. It definitely is the new way because it is newer than what you're after but if everything will be done inqmlin Qt 6 or 7 I have no idea.So to answer your questions:
At the moment I don't see any reason why
qmlwould be required to develop desktop based applications using Qt. This may be different for mobile but I have no experience so far in thatIn Qt 5 there is to my knowledge no sign of the old way becoming deprecated. Please correct me if I'm wrong
If you already have a good understand of
c++the main thing you have to learn is the principle of Signals & Slots and the main classes used in desktop applications (QApplication, QMainWindow, QWidget and QObject for instance)Except that I would suggest downloading & installing Qt (including examples) and running a few of those examples. In Qt 4, there was also a program called qtdemo to which I can't find a link in Qt 5, so I don't know if it still exists. If you can get hold of if there are great examples of what you can do.