What's the most important thing you should understand before you start understanding the Qt frame work?
I have been practicing with Qt for a few days and I really love Qt Designer, in fact I'm
surprice on how easy it is, I have used Shoes (with Ruby) and even Flash (with Actionscript 3.0) to create small application because I always tought that learning a program like Qt was for professional programmers, but now I'm starting to think that Qt is ectually easer than Flash to create application, because in Flash you have create everything yourself (buttons, menus etc.) and in Qt you already have what you need, thats awesome.
Again I'm a begginer, in fact I'm learning C++ at the same time (taking classes at college).
*What would you think is the most important thing you should understand before you start understanding the Qt frame work or start filling comfortable using it? *
I know the answer to my question may be to be an expert in C++ and read as much as you can about Qt, and that's probably true and I'm not trying to avoid that but what I'm looking for is, for instance when I was using Flash/Actionscript I knew that most classes were inherited from the Object class and every instance needed to be added to stage if you wanted to show it etc...
I hope my question make sense. I'm not trying to change the world with my applications, all I will be doing in Qt is very small applications, nothing too complicated.
Thanks a lot.
Personally I started from building qt gui apps without the designer. I think for GUI part It is very important:
- Widgets (i.e. QWidget, QDialog, QMainWindow, QPushButton, QLineEdit)
- Layout system and organizing widgets into layouts
- signals and slots
Generally is good to read some information an go through some simplest examples. I think it's the best way to get the idea of the GUI.
When you build some first app you may go deeper by the QObject and Event System and Event Loop, try reimplement some mousePressEvents etc.
Well, that's the way I've started, maybe it will also good for you.
About C++ - you don't need to be C++ GURU.
I think for start you just need to now basics of the language in general (pointers functions etc.), classes, inheritance and virtual function and basic templates usage to use the containers such as QList, QVector or QHash.
Classes, inheritance and polymorphism.
If you master those techniques in C++, Qt will become very easy for you.
Thank you all for the good advice!
bq. Personally I started from building qt gui apps without the designer.
What would be good a start? What book or documentation?
I noticed that my local Library has the 2006 publication of the "C++ GUI Programming with Qt 4" book, can this be used as reference or is this considered outdated?
Can I use Qt Designer as my compiler?
You may use that book to learn the concepts of Qt. The basic stuff have barely changed since that version.
I think the book is some how outdated because I just tried the first example and Qt didn't recognized the two imports shown in book, #include <QApplication> and #include <QLabel>.
Any other book that you guys could recommend?
Those should work. But you have to add the proper tags in your qmake file. Please check the examples in QtSDK and QtCreator's new project menu examples.
If you're so persistent about the book being outdated, just grab the new version of the book. I learned a lot from it.
Thanks a lot for your help. I will give it another try.