jak pobrać obrazek PictureBoxa

0

Narysowałem obrazek korzystając z Graphics:

Graphics tlo, tlobuffer;
tlo = MojPictureBox.CreateGraphics();

i metod:

tlo.DrawRectangle(...) 

Jak pobrać obraz z tlo i zapisać jego kopię w tlobuffer?

0

bo rozumiem, że graphics jest pewnym urządzeniem rysującym. A może da się jakoś pobrać obraz (ale nie PictureBox.Image bo to jest null) PictureBoxa?

0

oki zrobiłem dwa przyciski, jeden zapamiętuje grafikę a drugi ma ją odtwarzać:

 
//zapamietywanie obrazu grafiki
public void memorize()
        {

            Image img;
           
           img = new Bitmap(this.pb.Width, this.pb.Height, tlo);
           this.buffertlo = Graphics.FromImage(img);
        }
//odtwarzanie obrazu grafiki w PictureBox
        public void remember()
        {
            this.tlo = this.buffertlo;
        }

Ale nie działa odtwarzanie :(

0

A czemu sobie utrudniasz życie i używasz PictureBoxa nie tak, jak się go powinno używać?

0

Teraz zrobiłem tak

        Image img1;
        public void memorize()
        {
           //tworze bitmape o rozmiarach mojego PictureBox
           img1 = new Bitmap(this.pb.Width, this.pb.Height);
           //ustawiam na niego grafiksa
           this.tlo = Graphics.FromImage(img1);
           //ustawiam wskazanie Picture Boxa na obraz img1 
           this.pb.BackgroundImage = img1;
          
        } 

        public void RefreshPictureBox()
        {
            //odswiezanie PictureBoxa
            this.pb.Refreash(); 
        }

Dalej w kodzie wywołuję tak:

 
private void button13_Click(object sender, EventArgs e)
        {
                        
            dm.memorize();
            //ta funkcja rysuje po bitmapie
            dm.DrawColorRects();
        }

private void button14_Click(object sender, EventArgs e)
        {
            //odswiezenie Picture Boxa
            dm.RefreshPictureBox();
        }

No i działa, obraz jest cały czas wyświetlany.

0

somekind, a jak się powinno używać PictureBox?

1 użytkowników online, w tym zalogowanych: 0, gości: 1