IDE Overview

Qt Creator is an integrated development environment (IDE) that has tools for designing and developing applications with the Qt application framework. With Qt you can develop applications and user interfaces once and deploy them to several desktop, embedded, and mobile operating systems or web browsers (experimental). Qt Creator has the tools for accomplishing your tasks throughout the whole application development life-cycle, from creating a project to deploying the application to the target platforms.

Managing Projects

To be able to build and run applications, Qt Creator needs the same information as a compiler would need. It stores the information in the project settings.

You can share projects with other designers and developers across different development platforms with a common tool for design, development, and debugging.

  • Creating Projects

    To set up a project, you first have to decide what kind of an application you want to develop: do you want a user interface based on Qt Quick or Qt Widgets. Second, you have to choose the programming language to implement the application logic: C++ or Python.

  • Version Control Systems

    The recommended way to set up a project is to use a version control system. Store and edit only project source files and configuration files. Do not store generated files.

  • Configuring Projects

    Installation programs and project wizards create default configurations for Qt Creator and your projects. You can change the configurations in the Projects mode.

For more information, see How To: Manage Projects.

Designing User Interfaces

To create intuitive, modern-looking, fluid user interfaces, you can use Qt Quick and Qt Design Studio:

  • Qt Quick Designer

    Or, you can enable the Qt Quick Designer plugin to visually edit UI files (.ui.qml).

  • Converting UI Projects to Applications

    Qt Quick UI Prototype projects (.qmlproject) are useful for creating user interfaces. To use them for application development, you have to convert them to Qt Quick Application projects that have project configuration files (CMakeLists.txt or .pro), .cpp, and .qrc files.

  • UI Files

    If you switch between Qt Creator and Qt Design Studio or cooperate with designers on a project, you might encounter .ui.qml files. They are intended to be edited in Qt Design Studio only, so you need to be careful not to break the code. To visually edit the files in Qt Creator, enable the Qt Quick Designer plugin.

  • Using QML Modules with Plugins

    You can load C++ plugins for QML to simulate data.

If you need a traditional user interface that has a clear structure and enforces a platform look and feel, use Qt Widgets and the integrated Qt Designer.

For more information, see How To: Design UIs.

Coding

As an IDE, Qt Creator differs from a text editor in that it knows how to build and run applications. It understands the C++ and QML languages as code, not just as plain text. Therefore, it can offer useful features, such as semantic highlighting, checking code syntax, code completion, and refactoring actions. Qt Creator supports some of these services also for other programming languages, such as Python, for which a language server is available that provides information about the code to IDEs.

For more information, see How To: Edit Code.

Building and Running

Qt Creator integrates cross-platform systems for build automation: qmake, Qbs, CMake, and Autotools. In addition, you can import projects as generic projects and fully control the steps and commands used to build the project.

You can build applications for, deploy them to, and run them on the desktop environment or a device. Kits, build, run, and deployment settings allow you to quickly switch between different setups and target platforms.

For more information, see How To: Build and Run.

Testing

Qt Creator integrates several external native debuggers that you can use to inspect the state of your application while debugging.

Devices have limited memory and CPU power, so you should use them carefully. Qt Creator integrates code analysis tools for detecting memory leaks, profiling function execution, analyzing CPU use, and eliminating unnecessary complexity of code. Other tools provide code coverage and visualize trace events.

Qt Creator integrates several testing frameworks for unit testing applications and libraries. You can use Qt Creator to create, build, and run autotests.

For more information, see Testing.

Publishing

Qt Creator enables you to create installation packages for mobile devices that you can publish to application stores and other channels. You must make sure that the package contents meet the requirements for publishing on the channel.

For more information, see Publishing to Google Play.