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

Learn More


Button - Download 4.7.2 and SDK1.1 Beta


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

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                    

screenshot - CSWaveThe 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.

Key Functions

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

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

Icon - PDF
Whitepaper: Put XML to Work in Your Application with XQuery

See Example Code

Advanced 3D Graphics: OpenGL Module

Read Technical Documentation                    

Screenshot - VTK Designer OpenGL 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.

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

Icon - PDF
Whitepaper: Creating Cross-Platform Visualization UIs with Qt and OpenGL

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

Multicore Chip

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

Icon - PDF
Whitepaper: Improving Performance Across Platforms with Qt and Multithreading

See Example Code

Powerful 2D Graphics Canvas: Qt Graphics View

Read Technical Documentation                    

Screenshot - Widgets in Graphics View 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.

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.

Document Actions