IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

redessiner une SDI


Sujet :

MFC

  1. #1
    Membre confirm�
    Inscrit en
    Novembre 2007
    Messages
    66
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par d�faut redessiner une SDI
    bonsoir
    j'utilise une SDI. en fait je dessine une grille dans le ClientRect de la CView. mon probleme est que j'utilise aussi un timer, � chaque iteration du timer quelques cellules de la grille changent de couleur et je redessine toute la grille. donc, j'obtient quelques parasites on redessinant avec repetitions. est ce normal ? sinon comment faire pour rendre la s�quence de dessin fluide?

    merci pour votre aide.

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Je dirais ne faire le dessin qu'en un seul endroit (typiquement la fonction OnPaint() ou OnDraw()) et quand tu as besoin qu'elle soit redessiner, faire un Invalidate() sur la bonne CWnd (au pire, tu utilises la CFrameWnd) pour demander que OnDraw() soit appel�e.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirm�
    Inscrit en
    Novembre 2007
    Messages
    66
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par d�faut
    bonjour

    merci M�dinoc.
    mais je fais bien ce que vous dites. non, mais dessins sont correctes et justes, sauf que dans la boucle (je redissine chaque 100 ms) j'ai comme des flashs ou des trucs blancs qui apparaissent lors du redessinement. mais, c'est bon pour le contenu des dessins c'est juste ces trucs qui coupent la fluidit� entre le passage d'un etat � l'autre du dessin.

    ces trucs sont normaux ou bien c'est moi qui fais des betises?

  4. #4
    Membre confirm�
    Inscrit en
    Novembre 2007
    Messages
    66
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par d�faut
    bonjour

    mon prbleme je crois est que quand je redessine la grille je redessine chaque grille � part dans une boucle. est ce que je peux faire �a mais n'afficher le dessin qu'apres la fin de toute les cellules?

  5. #5
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    le mieux serait de travailler avec un bitmap en m�moire ,
    tu peux t'inspirer de ce post de la faq:
    http://cpp.developpez.com/faq/vc/?pa...TreeCtrlCustom

    le principe:
    le dessin se fait dans un bitmap en m�moire .
    le bitmap est projet� sur la form .
    en cas de repaint on envoie directement le bitmap on ne redessine pas le dessin..
    il serait judicieux de n'envoyer � l'�cran que la partie du bitmap qui change .

  6. #6
    Membre confirm�
    Inscrit en
    Novembre 2007
    Messages
    66
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par d�faut
    bonsoir

    merci farscape, je me suis inspirer de ton exemple et �a marche. mais, �a bouffe tros de memoire. j'ai fini mon projet mais je me demandais comment faire pour dessiner proprement, existe t il des bibliotheques pour (avec c++ biensur). quand je dis proprement je fais allusion au jeux video.

    si vous avez des liens utiles mais avec c++ je suis preneur.

    merci d'avance

Discussions similaires

  1. redessiner une vue !
    Par stachus dans le forum Eclipse Platform
    R�ponses: 2
    Dernier message: 28/03/2008, 11h20
  2. Redessiner une page?
    Par kiev333 dans le forum MFC
    R�ponses: 1
    Dernier message: 23/01/2007, 16h59
  3. R�ponses: 2
    Dernier message: 27/04/2005, 08h56
  4. Redessiner une grille d'un TStringGrid
    Par delphi5user dans le forum Composants VCL
    R�ponses: 9
    Dernier message: 12/10/2004, 15h04
  5. redessiner une Image1 avant de poursuivre
    Par jakouz dans le forum Composants VCL
    R�ponses: 4
    Dernier message: 18/11/2003, 16h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo