Rafraichir l'affichage d'un panel

Résolu
Zebuuu Messages postés 19 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 4 décembre 2012 - 12 déc. 2011 à 13:23
Zebuuu Messages postés 19 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 4 décembre 2012 - 12 déc. 2011 à 21:34
Bonjour à tous,

J'ai un petit soucis, qui pour certains paraîtra simple comme bonjour, mais je débute en C# et je 'ai pas le niveau de certains.

Je suis entrain de créer un jeu de plateau.

Par défaut les joueurs sont sur la 1er case (très simple) mais à un moment donné il faut bien que c est joueurs bougent sur le plateau de case en case

Alors voilà pour faire simple, j'ai un panel ou dedans il y a une image de fond (le plateau) et par dessus avec l'event PaintEventArgs j'affiche des cercles( qui représentent les joueurs) sauf qu'après je ne sais pas comment faire pour pouvoir afficher ces cercles plus ou alors effacer les premiers puis en afficher d'autres plus loin à chaque mouvement.

Faudrait-il que j'utilise une PictureBox plutôt?
Une surcharge de OnPaint();

J'ai chercher un peu mais je n'avance guère.

Enfin je suis un peu perdu, si quelqu'un pouvait m'aider ou m'aiguiller, je suis pas contre des conseils.

Merci d'avance,

5 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
12 déc. 2011 à 14:00
Bonjour,

Utilises la méthode Invalidate sur ton panel pour forcer son rafraichissement, et utilises l'event Paint.

Sinon regardes aussi du coté du DoubleBuffering.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
12 déc. 2011 à 19:03
Bonjour,

Pas à ma connaissance, mais, je n'ai pas fais ce genre de manipulation avec .NET.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
3
Zebuuu Messages postés 19 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 4 décembre 2012
12 déc. 2011 à 14:08
Merci pour ta réponse des plus rapides, je regarde ça tout de suite.
0
Zebuuu Messages postés 19 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 4 décembre 2012
12 déc. 2011 à 14:18
Un grand merci à toi, je savais que c'était tout simple, mais quand tu sais pas tu sais pas^^

l'appel de Invaladate(); marche à la perfection pour ce que je veux faire.

Une dernière question, y aura-t-il une différence pour mon projet si mon plateau est placé dans une PictureBox plutôt qu'un panel?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Zebuuu Messages postés 19 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 4 décembre 2012
12 déc. 2011 à 21:34
Ok merci de ta réponse.
0
Rejoignez-nous