Usage Graphicsstate

olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 - 24 févr. 2008 à 19:53
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 - 24 févr. 2008 à 23:00
Bonsoir

En dessinant sur un picture box, J'essaye de faire quelque chose mais je ne sais pas si c'est possible

En fait j'essaye de faire DEUX operation dans le meme process
1- Mettre a jour l'image de fond de mon picture box avec des nouveaux element en utilisant graphics
2- Ajouter des elements provisoire sur un layer complémentaire en utilisant un AUTRE graphics

Voici mon code

A la fin du process, je fais 
      this.pb_cont.Image = cityImage;
Ce qui a pour effet de sauver la nouvelle image dans pb et l'afficher
Mais aussi de zapper ce que j'ai dessiné sur mon layer intermediaire graphicsT

Est-il possible d'éviter cela ou de  reappliquer graphicsT sur l'image du PB ?

Dans mon ignorance j'avais pensé faire
      GraphicsState OldG = graphicsT.Save();
      this.pb_cont.Image = cityImage;
      graphicsT.Restore(OldG);

MAIS le compilateur ne reconait pas GraphicsState bien que la classe soit documentée

Merci de votre aide

    private void DrawCityList(DataSet cityList,SolidBrush AskBrush,int size)
    {


      cityImage = new Bitmap(this.pb_cont.Image);


      Graphics graphics = Graphics.FromImage(cityImage);
      Graphics graphicsT = pb_cont.CreateGraphics();


      foreach (AddrList cAdr in AddrLst)
      {
        graphics.DrawEllipse(Pens.Blue, cAdr.X - 1, cAdr.Y - 1, 2, 2);
        if (cAdr.active)
        {
          if (AskBrush != null)
          {
            graphicsT.FillEllipse(AskBrush, tX - size/2, tY - size/2, size, size);
          }
        }
      }


      this.pb_cont.Image
A voir également:

3 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
24 févr. 2008 à 20:51
Merci de ne pas poser les mêmes question 2 fois.

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
0
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 6
24 févr. 2008 à 20:56
Merci

Désolé mais ce n'est pas tout a fait la meme question meme si c'est dans le meme contexte
Ou alors je pose deux questions dans le meme post !
0
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 6
24 févr. 2008 à 23:00
Tout compte fait je devrais peut etre poster sur un autre sujet

La question est comment travailler avec plusieurs graphics sur un picturebox

Je realise une image de fond relativement stable
Et j'aimerais ajouter des layers que je peux faire apparaitre ou disparaitre sans chaque fois reconstituer toute l'image

En outre ces layer devrait etre accessible par différentes fonctions

Est ce possible ?
0
Rejoignez-nous