Go to content
To start page
To start page
  • eng
  • zho
  • About Us
  • qt-project.org
  • Log in Customer Portal
  • 中文
  • Product
  • Support
  • Services
  • Qt in Action
  • Try Now
  • Blog
Qt > Product > Library
  • Product
    • Qt
    • Library
      • Qt WebKit
    • Developer Tools
    • Qt Quick
    • Supported Platforms
    • Boot to Qt
    • Qt Add-Ons
    • Learning
    • What's New?

Modular Class Library

 

The modular Qt C++ class library provides a rich set of application building blocks, delivering all of the functionality needed to build advanced, cross-platform applications.

  • Intuitive
  • Easy to use and learn
  • Produce highly readable, easily maintainable code

 

Qt Commercial Libraries

The Foundation: Qt Core Module

Read Technical Documentation  

The Qt Core module forms the foundation of all Qt-based applications with core non-graphical classes used by other modules.

Key Functions

  • File IO, event and object handling
  • Multi-threading and concurrency
  • Plugins, setting management
  • Signals and Slots inter-object communications mechanism

 

Benefits

  • Reduce development time and cost by leveraging a complete set of application building blocks
  • Develop portable code from the ground up with cross-platform functionality

 

See Example Code

Qt Declarative: Custom, Dynamic User Interfaces

Read Technical Documentation


The Qt Declarative module provides a powerful set of classes for creating highly dynamic, custom user interfaces for touch-enabled mobile and embedded devices. Qt Declarative is a key component of the Qt Quick user interface creation kit, which can be used by developers familiar with CSS and JavaScript.

Key Functions

  • QML Elements: A set of UI and behavioural building blocks
  • Declarative programming approach
  • QtDeclarativeView widget for displaying a Qt Declarative user interface

 

Benefits

  • Rapidly create highly customized, advanced user interfaces
  • Extend applications built using the QML language with C++
  • Utilize a declarative approach to define the look and behavior of a UI

 

See Example Code

Blend Web and Rich Content and Services: Qt WebKit Integration

Read Technical Documentation 

The Qt WebKit Integration is an integration of WebKit with Qt. It provides an HTML browser engine that makes it easy to embed web content into native applications, and to enhance web content with native controls.

Learn more about Qt and HTML5 

Build Advanced Graphical User Interfaces: GUI Module

Read Technical Documentation

The Qt GUI module contains the functionality needed to develop advanced graphical user interface applications.  Qt uses the native graphics API of each platform it supports, taking full advantage of system resources. 

You can also create customized UIs with a unique look and feel with the Qt Quick UI creation kit.

image_mini.jpg

Key Functions

  • Complete set of customizable widgets
  • 2D graphics canvas and OpenGL® integration
  • Powerful font and layout engine
  • Style engine and widget stylesheets
  • Anti-aliasing, vector deformation, and SVG support
  • Advanced graphics effects
  • Support for ARGB top-level widgets

 

Benefits

  • Build user interfaces in less lines of code with complete set of building blocks
  • Complete control over the look and feel of your applications and devices
  • Customize your UI with only a few lines of CSS code
  • Deliver a rich user experience

 

See Example Code

ECMA Standard Scripting Engine: Qt Script Module

Read Technical Documentation 

Qt includes a fully-integrated, ECMA standard scripting engine based on a JavaScriptCore back-end. Qt Script provides QObject integration, brings Qt’s Signals & Slots mechanism to scripting, and allows integration between C++ and scripting.

Key Functions

  • ECMA standard scripting language (ECMAScript 3, the basis of JavaScript 1.5)
  • Access to Qt's signals and slots mechanism for simplified inter-object communication
  • Integrated QtScript Debugger

 

Benefits

  • Script-enable your applications with a minimum of development effort
  • Provide error reporting for scripts, and to let users track down bugs in their own scripts

 

See Example Code

Build Connected Applications: Networking Module

Read Technical Documentation 

The Qt Networking module provides functionality to make network programming easier and cross-platform. Qt provides complete client and server socket abstraction, and implements common protocols such as HTTP, FTP and DNS, including support for asynchronous HTTP 1.1.

Key Functions

  • Complete client and server socket abstraction
  • High-level classes such as QHttp and QFtp that implement specific application-level protocols
  • Lower-level classes such as QTcpSocket, QTcpServer, and QUdpSocket
  • Support for HTTP, FTP, DNS, asynchronous HTTP 1.1

 

Benefits

  • Makes network programming easier and cross-platform

 

See Example Code

Integrate with All Major Databases: Database Module

Read Technical Documentation  

The QtSql module helps you provide seamless database integration to your Qt applications.  Qt supports all major database drivers, and lets you send SQL to the database server, or have the Qt SQL classes generate SQL queries automatically.

Key Functions

  • Driver Layer: Provides support for ODBC, MySQL, PSQL, SQLite, ibase, Oracle, Sybase, DB2
  • API Layer: Provides access to specific databases
  • UI Layer: Link data from a database to data-aware widgets
  • Work with Qt’s Model/View programming model

 

Benefits

  • Easily integrate data from databases into your Qt applications
  • Present data in a variety of views
  • Separate the data from the view, giving more flexibility for presenting data to the user in an intuitive way

 

See Example Code

Reduce Application Testing Time: Unit Testing Framework

Read Technical Documentation

Qt provides all the functionality commonly found in unit testing frameworks as well as extensions for testing graphical user interfaces.

Key Functions

  • Lightweight, self-contained testing framework
  • Functionality for mouse and keyboard simulation
  • Integrates with Visual Studio and KDevelop IDEs
  • Custom types can easily be added to the test data and test output

 

Benefits

  • Reduce the time and cost needed to write and perform tests
  • Rapidly run repeatable tests on your Qt applications
  • Deliver higher quality applications and devices faster

Put XML to Work in Your Application: XML Module

Read Technical Documentation  

The QtXml module provides a stream reader and writer for XML documents, C++ implementations of SAX and DOM and an XQuery & XPath engine. XQuery is a simple SQL-like query language for traversing XML documents to select and aggregate XML elements of interest and transform them for output as XML or in some other format.  XQuery simplifies query tasks by eliminating the need for large amounts of procedural programming in C++.

Key Functions

  • Stream reader and writer for XML documents
  • C++ implementations of the SAX and DOM APIs
  • Classes for higher level querying and manipulation of XML data using the XQuery query language
  • Support for the XSLT transformation language for XML documents
  • Support for XML Schema validation

 

Benefits

  • Perform advanced XML queries with only a few lines of code
  • Easily query, extract and transform XML data in your application

 

See Example Code

Advanced 3D Graphics: OpenGL Module

Read Technical Documentation

The QtOpenGL module offers classes that make it easy to incorporate 3D graphics with OpenGL and OpenGL ES in Qt applications. OpenGL is the standard graphics library for building cross-platform, hardware-accelerated, high performance visualization applications. While OpenGL is ideal for 3D visualization, it offers little support for creating application user interfaces.

image_mini.png

Key Functions

  • OpenGL widget to render graphics with the OpenGL API in Qt applications
  • Integration with OpenGL ES on Linux/X11 and Windows CE

 

Benefits

  • Easily include 3D graphics in your applications
  • Take advantage of system resources for maximum graphics performance
  • Use Qt’s rich GUI functionality to build advanced UIs for 3D applications

 

See Example Code

Take Advantage of Multicore Hardware: Multithreading Features

Read Technical Documentation

Qt’s cross-platform multi-threading functionality simplifies parallel programming, while added concurrency features make it easier to take advantage of multi-core architecture.

Key Functions

  • Classes for thread, data and object management
  • Type-safe inter-thread communication using Qt’s Signals and Slots
  • High-level Concurrency APIs to abstract low-level threading primitives

 

image_preview.png

Benefits

  • Simplify multi-threaded programming
  • Take advantage of multi-core architecture for maximum runtime performance
  • Write multi-threaded programs without using low-level threading primitives
  • Automaticallly adjust the number of threads used according to the number of processor cores available

 

See Example Code

Powerful 2D Graphics Canvas: Qt Graphics View

Read Technical Documentation 

Qt Graphics View provides a surface for managing and interacting with a large number of custom-made 2D graphical items, and a view widget for visualizing the items, with support for zooming and rotation. Graphics View uses a BSP (Binary Space Partitioning) tree to provide very fast item discovery, and as a result of this, it can visualize large scenes in real-time, even with millions of items.

widgets-in-graphics-view-screenshot

Key Functions

  • Zooming, rotation, perspective transformation and animation
  • Drag-and-drop and printing support
  • Embed and interact with widgets in the graphics scene
  • Accelerated rendering back-ends, including OpenGL, OpenGL ES, and OpenVG*

 

Benefits

  • Build advanced graphic effects faster
  • Visualize millions of graphical items with high performance
  • Allow users to interact with your application in new ways

 

See Example Code


*Symbian platform only.

  • Digia Oyj, Valimotie 21, 00380 Helsinki Finland Tel. +358 10 313 3000
  • Give us your feedback
  • © 2013 Digia. Legal and Privacy
  • Bookmark
  • Share this page: