|
|
(18 intermediate revisions by 8 users not shown) |
Line 1: |
Line 1: |
| {{Template:I18n/Language Navigation Bar|Development/Tutorials/Using Qt Creator}} | | {{Moved To Community | Guidelines_and_HOWTOs/Using_Qt_Creator}} |
| | |
| QtCreator is an IDE from Nokia for Qt. It contains QtDesigner for UI design. This article describes:
| |
| * why use Qt Creator
| |
| * how to create a new program
| |
| * how to load an existing program
| |
| | |
| = Why use Qt Creator =
| |
| {|align="right"
| |
| |[[image:Snapshot-qtcreator.png|right|thumb|200px|KDE4's ktimetracker loaded as QtCreator project]]
| |
| |}
| |
| To create your C++ programs you can use any text editor. But life will be much easier if you gain Qt Creator's features, that means
| |
| * you can get your source code saved, built and run on one click
| |
| * you get code-completion
| |
| * you can find all places in your source code where you call a function (e.g. "where do I call refresh()")
| |
| * you can go back to a more recent cursor-position with your editor, even if this is in another file
| |
| * you can checkout and check in to a subversion or git repository without leaving your workflow
| |
| | |
| = Creating a new program =
| |
| Here is a short example how you can create a "hello world" program. For more information read the [http://qt.nokia.com/doc/designer-manual.html user documentation].
| |
| | |
| ;Step 0:
| |
| Call Qt Creator
| |
| <pre>
| |
| qtcreator
| |
| </pre>
| |
| Then select New File or Project -> Qt C++ Project -> Qt Gui Application -> name = helloworld -> Next -> Next -> Finish
| |
| | |
| ;Step 1:
| |
| Select Edit -> Forms -> mainwindow.ui. Add the widgets you want by drag-and-drop:
| |
| | |
| [[File:Designer-step1.png|200px]]
| |
| | |
| ;Step 2:
| |
| Select the mainwindow. This is the one un-intuitive step. To lay out the objects in the mainwindow, you do not select the objects in the mainwindow, but the mainwindow itself.
| |
| | |
| [[File:Designer-step2.png|200px]]
| |
| | |
| ;Step 3:
| |
| Select Form -> Lay Out in a <u>G</u>rid
| |
| | |
| [[File:Designer-step3.png|200px]]
| |
| | |
| ;Result:
| |
| You get a decent look, and if you resize the window, the widgets resize as well.
| |
| | |
| [[File:Designer-result.png|200px]]
| |
| | |
| == Using KDE libraries ==
| |
| To use KDE classes like KMessageBox, you need to tell qtcreator to use the KDE libraries when building. Go to your home directory, cd into ''yourproject'' and modify ''yourproject.pro''. Add a line
| |
| <pre>
| |
| LIBS += -lkdeui
| |
| </pre>
| |
| Then you can start using KDE classes in your code.
| |
| | |
| == Adding a toolbar ==
| |
| To add a toolbar, right-click on the UI and choose "Add Toolbar". Then you can set icons and text in your mainwindow's constructor with code like this:
| |
| <syntaxhighlight lang="cpp-qt">
| |
| ui->toolBar->addAction(QIcon("/usr/share/icons/oxygen/22x22/apps/ktip.png"),"hello world");
| |
| </syntaxhighlight>
| |
| [[Development/Tutorials/Using_Qt_Designer|More Info...]]
| |
| | |
| = Load an existing project =
| |
| This describes how to use QtCreator to integrate existing KDE 4 applications. It has been tested with QtCreator 1.2.80 and SUSE Linux 11.1 but should work same or similar with every combination. As an example KDE application we use [http://userbase.kde.org/ktimetracker ktimetracker] from the kdepim module, other applications should work analog.
| |
| | |
| You can either work with code on your disk or have QtCreator do the subversion checkout.
| |
| | |
| == use code from your disk ==
| |
| * Import the CMakeLists.txt file (File -> Open -> kdepim/CMakeLists.txt)
| |
| * As build directory choose kdepim.
| |
| * You will automatically come to a screen where you can run cmake
| |
| * Continue with the step "Run cmake"
| |
| | |
| == have QtCreator do the subversion checkout ==
| |
| * Choose File -> New File or Project -> Version Control -> Subversion Checkout.
| |
| * Enter a subversion URL like svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim
| |
| * Enter a checkout directory, so the local directory where the checkout will be loaded in
| |
| * Type finish, see how the checkout starts
| |
| * You will automatically come to a screen where you can run cmake
| |
| * Continue with the step "Run cmake"
| |
| | |
| == have QtCreator do the git checkout ==
| |
| * Choose File -> New File or Project -> Version Control -> Git Checkout.
| |
| | |
| * accept kdepim as checkout directory
| |
| * Type finish, see how the checkout starts
| |
| * You will automatically come to a screen where you can run cmake
| |
| * Continue with the step "Run cmake"
| |
| | |
| == Run cmake ==
| |
| * Enter arguments for cmake like
| |
| <syntaxhighlight lang="bash">
| |
| /root/kdepim -DCMAKE_INSTALL_PREFIX=/usr/local -DLIB_SUFFIX=64 -DCMAKE_BUILD_TYPE=debugfull
| |
| </syntaxhighlight>
| |
| <tt>DLIB_SUFFIX=64</tt> means that you want to install your libraries into directories named <tt>lib64</tt>, not <tt>lib</tt>. ''/root/kdepim'' is where your source code is.
| |
| * click "Run cmake"
| |
| * Note a .cbp file gets created containing many information about the build.
| |
| * click "Finish"
| |
| | |
| == Build it ==
| |
| * Configure qtcreator to build only ktimetracker:
| |
| Projects -> Active run configuration=ktimetracker -> build settings -> build steps -> make -> show details -> activate ktimetracker.
| |
| * Configure qtcreator to use 8 logical processors:
| |
| Projects -> Active run configuration=ktimetracker -> build settings -> build steps -> make -> show details -> addtional Arguments = -j8
| |
| * Choose Build -> Build All
| |
| | |
| = See also =
| |
| * [[Development/Tutorials/Using Qt Designer]]
| |
| * [[Getting_Started/Using_an_IDE_with_KDE4#QtCreator]]
| |
| | |
| [[Category:KDE4]]
| |