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  ·  Classes principales  ·  Annotées  ·  Classes groupées  ·  Modules  ·  Fonctions  · 

QDirectPainter Class Reference
[QtGui module]

The QDirectPainter class provides direct access to the video hardware. More...

#include <QDirectPainter>

Inherits QObject.

Static Public Members

  • 4 static public members inherited from QObject

Additional Inherited Members

  • 1 property inherited from QObject
  • 28 public functions inherited from QObject
  • 1 public slot inherited from QObject
  • 1 signal inherited from QObject
  • 7 protected functions inherited from QObject

Detailed Description

The QDirectPainter class provides direct access to the video hardware.

When the hardware is known and well defined, as is often the case with software for embedded devices, it may be useful to manipulate the underlying video hardware directly. Note that this functionality is only available in Qtopia Core.

Access to the video hardware is provided by the frameBuffer() function which returns a pointer to the beginning of the display memory. In order to access the video hardware in a way that is co-operative with other applications, a region of the screen must be reserved for the application, QDirectPainter provides the necessary functionality: The reserveRegion() function attempts to reserve the given region and returns the region actually reserved. The reserved region can also be retrieved using the region() function.

Depending on the hardware, it might be necessary to lock the video hardware for exclusive use while writing to it. This is possible using the lock() and unlock() functions. Note that calling lock() will prevent all other applications from working until unlock() is called.

In addition, QDirectPainter provides several functions returning information about the framebuffer as well as the screen: the linestep() function returns the length (in bytes) of each scanline of the framebuffer while the screenDepth(), screenWidth() and screenHeight() function return the screen metrics.

See also QScreen and QDecoration.


Member Function Documentation

uchar * QDirectPainter::frameBuffer ()   [static]

Returns a pointer to the beginning of the display memory.

Note that it is the applications responsibility to limit itself to modifying only the reserved region.

See also region() and linestep().

int QDirectPainter::linestep ()   [static]

Returns the length (in bytes) of each scanline of the framebuffer.

See also frameBuffer().

void QDirectPainter::lock ()   [static]

Locks access to the video hardware.

Note that calling this function will prevent all other applications from working until unlock() is called.

See also unlock().

QRegion QDirectPainter::region ()   [static]

Returns the reserved region.

See also reserveRegion() and frameBuffer().

QRegion QDirectPainter::reserveRegion ( const QRegion & region )   [static]

Attempts to reserve the given region, and returns the region that is actually reserved.

This function also releases the previously reserved region if any. If not released explicitly, the region will be released on application exit.

See also region().

int QDirectPainter::screenDepth ()   [static]

Returns the bit depth of the display.

See also screenHeight() and screenWidth().

int QDirectPainter::screenHeight ()   [static]

Returns the height of the display in pixels.

See also screenWidth() and screenDepth().

int QDirectPainter::screenWidth ()   [static]

Returns the width of the display in pixels.

See also screenHeight() and screenDepth().

void QDirectPainter::unlock ()   [static]

Unlocks the lock on the video hardware (set by the lock() function), allowing other applications to access the screen.

See also lock().

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 78
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. 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
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 6
Page suivante

Le Qt Quarterly au hasard

Logo

Les aventures de QLALR - utiliser QLALR pour générer un parseur pour une aventure textuelle

Qt Quarterly est la revue trimestrielle proposée par Nokia et à destination des développeurs Qt. Ces articles d'une grande qualité technique sont rédigés par des experts Qt. 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.1
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