cs_emmanuel9
Messages postés903Date d'inscriptionmercredi 23 février 2005StatutMembreDernière intervention16 juin 2010
-
24 mars 2005 à 10:22
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
24 mars 2005 à 17:08
Bonjour,
Un truc que j'ai pas pigé c'est que je dessine un objet graphics, il se dessine seulement si je le met dans l'evenement click d'un bouton ou autre. Si je le met dans Form1_Load il se dessine point.
Et en plus quand je deplace mon objet Graphics et que je le fais glisser en dehors de la zone d ecran, quand je le fais revenir il a tendance à s'effacer.
Quelqun aurait t'il une solution pour ces problèmes ?
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 24 mars 2005 à 15:54
Et le Bitmap nous sert juste de buffer pour afficher le "résultat" en un coup au lieu d'avoir un refresh à chaque DrawLine, donc pas de problème pour tes camemberts par la suite :-)
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 24 mars 2005 à 16:39
Ah oui j'avais oublier qu'on avait le Graphics fourni en arg de l'event lol
Le code de ma méthode Paint devient donc :
private void panel_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
e.Graphics.DrawImageUnscaled(b, 0, 0);
}
Ba toi ce que tu fait c'est que tu dessines directement sur le panel, quand tu aurais beaucoup plus de choses à dessiner tu comprendras pourquoi on prefere passer par un buffer intermediaire et dessiner le resultat :-)
cs_emmanuel9
Messages postés903Date d'inscriptionmercredi 23 février 2005StatutMembreDernière intervention16 juin 20102 24 mars 2005 à 16:54
quand je vais passer à mes camenberts, faudra pas être epilleptique pour utiliser mon programme donc faut mieux que je passe par un buffer en effet. ca s'appellerais pas le doublebuffering cette méthode d'ailleur, c'est utilisé dans les jeux pour eviter l'effet de scintillement je crois. On dessine d'abord en mémoire avant d'afficher. Y'a même le triplebuffering pour la 3d je crois.
Vous n’avez pas trouvé la réponse que vous recherchez ?