Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

The Paint System

Qt's paint system enables painting on screen and print devices using the same API, and is primarily based on the QPainter, QPaintDevice, and QPaintEngine classes.

QPainter is used to perform drawing operations, QPaintDevice is an abstraction of a two-dimensional space that can be painted on using a QPainter, and QPaintEngine provides the interface that the painter uses to draw onto different types of devices. The QPaintEngine class is used internally by QPainter and QPaintDevice, and is hidden from application programmers unless they create their own device type.

The main benefit of this approach is that all painting follows the same painting pipeline making it easy to add support for new features and providing default implementations for unsupported ones.

Topics

Classes for Painting

These classes provide support for painting onto a paint device.

QBitmapMonochrome (1-bit depth) pixmaps
QBrushDefines the fill pattern of shapes drawn by QPainter
QColorColors based on RGB, HSV or CMYK values
QColormapMaps device independent QColors to device dependent pixel values
QConicalGradientUsed in combination with QBrush to specify a conical gradient brush
QDirectPainterDirect access to the underlying hardware in Qt for Embedded Linux
QFontSpecifies a font used for drawing text
QFontMetricsFont metrics information
QFontMetricsFFont metrics information
QGenericMatrixTemplate class that represents a NxM transformation matrix with N columns and M rows
QGradientUsed in combination with QBrush to specify gradient fills
QIconScalable icons in different modes and states
QIconEngineAbstract base class for QIcon renderers
QIconEngineV2Abstract base class for QIcon renderers
QImageHardware-independent image representation that allows direct access to the pixel data, and can be used as a paint device
QImageReaderFormat independent interface for reading images from files or other devices
QImageWriterFormat independent interface for writing images to files or other devices
QLineTwo-dimensional vector using integer precision
QLineFTwo-dimensional vector using floating point precision
QLinearGradientUsed in combination with QBrush to specify a linear gradient brush
QMarginsDefines the four margins of a rectangle
QMovieConvenience class for playing movies with QImageReader
QPaintDeviceThe base class of objects that can be painted
QPaintEngineAbstract definition of how QPainter draws to a given device on a given platform
QPainterPerforms low-level painting on widgets and other paint devices
QPainterPathContainer for painting operations, enabling graphical shapes to be constructed and reused
QPainterPathStrokerUsed to generate fillable outlines for a given painter path
QPaletteContains color groups for each widget state
QPenDefines how a QPainter should draw lines and outlines of shapes
QPicturePaint device that records and replays QPainter commands
QPixmapOff-screen image representation that can be used as a paint device
QPixmapCacheApplication-wide cache for pixmaps
QPointDefines a point in the plane using integer precision
QPointFDefines a point in the plane using floating point precision
QPolygonVector of points using integer precision
QPolygonFVector of points using floating point precision
QRadialGradientUsed in combination with QBrush to specify a radial gradient brush
QRectDefines a rectangle in the plane using integer precision
QRectFDefines a rectangle in the plane using floating point precision
QRegionSpecifies a clip region for a painter
QSizeDefines the size of a two-dimensional object using integer point precision
QSizeFDefines the size of a two-dimensional object using floating point precision
QStylePainterConvenience class for drawing QStyle elements inside a widget
QSvgGeneratorPaint device that is used to create SVG drawings
QSvgRendererUsed to draw the contents of SVG files onto paint devices
QSvgWidgetWidget that is used to display the contents of Scalable Vector Graphics (SVG) files
QTransformSpecifies 2D transformations of a coordinate system
QVector2DRepresents a vector or vertex in 2D space

Alternatively, Qt provides the QtOpenGL module, offering classes that makes it easy to use OpenGL in Qt applications. Among others, the module provides an OpenGL widget class that can be used just like any other Qt widget, except that it opens an OpenGL display buffer where the OpenGL API can be used to render the contents.

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. Microsoft ouvre aux autres compilateurs C++ AMP, la spécification pour la conception d'applications parallèles C++ utilisant le GPU 22
  2. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  3. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 17
  4. RIM : « 13 % des développeurs ont gagné plus de 100 000 $ sur l'AppWord », Qt et open-source au menu du BlackBerry DevCon Europe 0
  5. BlackBerry 10 : premières images du prochain OS de RIM qui devrait intégrer des widgets et des tuiles inspirées de Windows Phone 0
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
Page suivante

Le Qt Labs au hasard

Logo

QMake et au-delà

Les Qt Labs sont les laboratoires des développeurs de Qt, où ils peuvent partager des impressions sur le framework, son utilisation, ce que pourrait être son futur. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.6
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web