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  ·  Classes  ·  Annotées  ·  Hiérarchie  ·  Fonctions  ·  Structure  · 

QCanvasSprite Class Reference
[ canvas module ]


The QCanvasSprite class provides an animated moving pixmap on a QCanvas. More...

#include <qcanvas.h>

Inherits QCanvasItem.

List of all member functions.

Public Members

  • QCanvasSprite ( QCanvasPixmapArray * array, QCanvas * canvas ) 
  • void setSequence ( QCanvasPixmapArray * seq ) 
  • virtual ~QCanvasSprite () 
  • virtual void move ( double x, double y, int frame ) 
  • void setFrame ( int ) 
  • int frame () const
  • int frameCount () const
  • virtual int rtti () const
  • virtual QRect boundingRect () const

Protected Members

  • virtual void draw ( QPainter & painter ) 
  • int width () const
  • int height () const
  • int absX () const
  • int absY () const
  • int absX2 () const
  • int absY2 () const
  • int absX ( int nx ) const
  • int absY ( int ny ) const
  • int absX2 ( int nx ) const
  • int absY2 ( int ny ) const
  • QCanvasPixmap* image () const
  • virtual QCanvasPixmap* imageAdvanced () const
  • QCanvasPixmap* image ( int f ) const

Detailed Description

The QCanvasSprite class provides an animated moving pixmap on a QCanvas.

A "sprite" is an image object that moves around independently of foreground and background. On a QCanvas, everything moves around independently of the foreground and background, so a QCanvasSprite is just a image whose API makes it simpler to use animation and a hot spot.

QCanvasSprite draws very fast, at the cost of some memory.


Member Function Documentation

QCanvasSprite::QCanvasSprite ( QCanvasPixmapArray * a, QCanvas * canvas )

Constructs a QCanvasSprite which uses images from the given array.

The sprite in initially at (0,0) on canvas, using frame 0.

QCanvasSprite::~QCanvasSprite () [virtual]

Destruct the sprite. It is removed from its QCanvas in this process.

int QCanvasSprite::absX () const [protected]

The absolute horizontal position of the sprite. This is the pixel position of the left edge of the image, as it takes into account the offset.

int QCanvasSprite::absX ( int nx ) const [protected]

The absolute horizontal position of the sprite, if it was moved to nx.

int QCanvasSprite::absX2 () const [protected]

The right edge of the sprite image.

See also absX().

int QCanvasSprite::absX2 ( int nx ) const [protected]

The right edge of the sprite image, if the sprite was moved to nx.

See also absX().

int QCanvasSprite::absY () const [protected]

The absolute vertical position of the sprite. This is the pixel position of the top edge of the image, as it takes into account the offset.

int QCanvasSprite::absY ( int ny ) const [protected]

The absolute vertical position of the sprite, if it was moved to ny.

int QCanvasSprite::absY2 () const [protected]

The bottom edge of the sprite image.

See also absY().

int QCanvasSprite::absY2 ( int ny ) const [protected]

The bottom edge of the sprite image, if the sprite was moved to ny.

See also absY().

QRect QCanvasSprite::boundingRect () const [virtual]

Returns the bounding rectangle of pixels covered by the sprite. This assumes that the images are tightly cropped (ie. do not have transparent pixels all along a side).

Reimplemented from QCanvasItem.

bool QCanvasSprite::collidesWith ( const QCanvasItem * i ) const [virtual]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QCanvasItem.

void QCanvasSprite::draw ( QPainter & painter ) [virtual protected]

Draws the current image of the sprite at its current position, as given by image() and x(), y().

Reimplemented from QCanvasItem.

int QCanvasSprite::frame () const

Returns the index into the QCanvasSprite's QCanvasPixmapArray of the current animation frame.

See also setFrame() and move(double,double,int).

int QCanvasSprite::frameCount () const

Returns the number of frames in the QCanvasSprite's QCanvasPixmapArray.

int QCanvasSprite::height () const [protected]

The height of the sprite, in its current image.

See also frame().

QCanvasPixmap* QCanvasSprite::image () const [protected]

Returns the current image frame.

See also frame() and setFrame().

QCanvasPixmap* QCanvasSprite::image ( int f ) const [protected]

Returns image frame f.

QCanvasPixmap* QCanvasSprite::imageAdvanced () const [virtual protected]

The image the sprite will have after advance(1) is called. Be default this is the same as image().

void QCanvasSprite::move ( double nx, double ny, int nf ) [virtual]

Set both the position and the frame of the sprite.

void QCanvasSprite::move ( double x, double y )

Reimplemented for internal reasons; the API is not affected.

int QCanvasSprite::rtti () const [virtual]

Returns 1.

void QCanvasSprite::setFrame ( int f )

Sets the animation frame used for displaying the sprite to f, an index into the QCanvasSprite's QCanvasPixmapArray.

See also frame() and move(double,double,int).

void QCanvasSprite::setSequence ( QCanvasPixmapArray * a )

Set the array of images used for displaying the sprite. Note that the array should have enough images for the sprites current frame() to be valid.

int QCanvasSprite::width () const [protected]

The width of the sprite, in its current image.

See also frame().


Search the documentation, FAQ, qt-interest archive and more (uses www.trolltech.com):


This file is part of the Qt toolkit, copyright © 1995-2005 Trolltech, all rights reserved.

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 102
  2. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 53
  3. «Le projet de loi des droits du développeur» : quelles conditions doivent remplir les entreprises pour que le développeur puisse réussir ? 73
  4. Les développeurs détestent-ils les antivirus ? Un programmeur manifeste sa haine envers ces solutions de sécurité 28
  5. Qt Commercial : Digia organise un webinar gratuit le 27 mars sur la conception d'interfaces utilisateur et d'applications avec le framework 0
  6. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 11
Page suivante
  1. Linus Torvalds : le "C++ est un langage horrible", en justifiant le choix du C pour le système de gestion de version Git 100
  2. Comment prendre en compte l'utilisateur dans vos applications ? Pour un développeur, « 90 % des utilisateurs sont des idiots » 229
  3. Quel est LE livre que tout développeur doit lire absolument ? Celui qui vous a le plus marqué et inspiré 96
  4. Apple cède et s'engage à payer des droits à Nokia, le conflit des brevets entre les deux firmes s'achève 158
  5. Nokia porte à nouveau plainte contre Apple pour violation de sept nouveaux brevets 158
  6. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 102
  7. Quel est le code dont vous êtes le plus fier ? Pourquoi l'avez-vous écrit ? Et pourquoi vous a-t-il donné autant de satisfaction ? 83
Page suivante

Le Qt Developer Network au hasard

Logo

Livre blanc de l'outillage de Qt Quick

Le Qt Developer Network est un réseau de développeurs Qt anglophone, où ils peuvent partager leur expérience sur le framework. 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 2.3
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