Graphisme et clignottement

jadsof Messages postés 11 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 5 février 2008 - 26 août 2005 à 09:21
jadsof Messages postés 11 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 5 février 2008 - 26 août 2005 à 19:10
Bonjour,
J'aimerais avoir quelques conseils pour l'élaboration d'une application graphique:
Le but et de construire un programme permettant de créer une liste de pages (Chemin de fer), dans chacune des pages il ya des blocs (rectangles).
J'ai effectué quelques tests de dessin de rectangle et j'ai un premier problème concernant le clignottement lors de la manipulation des rectangles.
Que faut-il utiliser ? PaintBox, TImage ect...
Si en plus quelqu'un a un exemple d'application graphique (avec source), j'en serais trés heureux.
Merci.
Jah

3 réponses

cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
26 août 2005 à 14:35
Supprimer le clignotement :
DoubleBuffered:=true;

C'est le même principe (quoi que je préfère la méthode qui arrive) que de faire un TBitmap en mémoire et une fois qu'il est près, on fait un CopyRect dans un TCanvas. On a alors un dessin en une seule traite et le scintillement disparaît. J'ai implémenté cette méthode dans ma barre de progression style WinRAR.

Un TPaintBox requiert un canvas mais un buffer TBitmap permanent, car le TPaintBox ne peut pas s'autorafraichir, car c'est une zone de dessin qui ne mémorise rien. Le buffer est le bitmap que tu auras créé en arrière-plan.

TImage implémente un canvas et un TBitmap. Mais si tu dessines dans ce TBitmap, il y a problème de scintillement. Il faut un buffer caché, ce qui crée au final 2 TBitmap en mémoire, alors que TPaintBox n'en a besoin que d'un.

===========
Validez les réponses si ok...

ViewVite XP : HTML
0
neodelphi Messages postés 442 Date d'inscription jeudi 4 avril 2002 Statut Membre Dernière intervention 11 août 2008
26 août 2005 à 16:56
Bonjour.

Perso j'utilise les TImage pour dessiner, et ça marche nikel. En plus ça te permet également de faire des effet avec la manipulation des pixel, mais je suis pas sur que ça te serve toi.
Si tu veut un exemple de programme utilisant un TImage pour une interface tu peut aller voir mon source delphi.

A+

neodelphi
0
jadsof Messages postés 11 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 5 février 2008
26 août 2005 à 19:10
Merci à vous pour ces conseils,

Je vais tester tout ça,

Jah
0
Rejoignez-nous