C++ CLI Problem z rysowaniem na pictureboxie

0

Potrzebuje pomocy nie moge sobie poradzić z rysowaniem po pictureboxie w Visual C++ 2010. Problem obiawa sie
tym ze za każdym kolejnym klikniciu myszy narysowany obiekt mi znika, minimalizacja okna tez powoduje ze rysunek
znika.

 
private: System::Void pictureBox1_MouseDown(System::Object^  sender, System::Windows::Forms::MouseEventArgs^  e) 
		                {
								
				
				if((e->Button == System::Windows::Forms::MouseButtons::Left) && (wierzcholek == true))
		  			{ 
					
											
						SolidBrush^ pedzel=gcnew SolidBrush(Color::Black);
						pictureBox1->Image = gcnew Bitmap(pictureBox1->Width, pictureBox1->Height);
						Graphics^ g = Graphics::FromImage(pictureBox1->Image);
						g->SmoothingMode = System::Drawing::Drawing2D::SmoothingMode::AntiAlias;
						g->CompositingQuality = System::Drawing::Drawing2D::CompositingQuality::HighQuality;
						g->InterpolationMode = System::Drawing::Drawing2D::InterpolationMode::HighQualityBicubic;
					
						Pen^ pioro = gcnew Pen(Color::Black);  
						pioro->Width = 3;
						System::Drawing::Font^ czcionka = gcnew System::Drawing::Font(FontFamily::GenericSansSerif, 14, FontStyle::Bold);
						
						int wx = e->X;
						int wy = e->Y;
						String^ numer = gcnew String(wsknumer);
						g->DrawString(numer,czcionka, pedzel, wx+8,wy+6);
						Rectangle rect = Rectangle(wx,wy,35,35);
						g->DrawEllipse(pioro,rect); 
						pictureBox1->Image->Save("C:\\a.jpg", System::Drawing::Imaging::ImageFormat::Jpeg);
				}
}

Prosze o pomoc i o jakies sugestie...

PS. Zapisywanie też nie działa ponieważ zapisuje sie pusty obraz

0

też nie wiem dlaczego w c++ to projekt zaliczeniewy i tak sobie zyczył profesor

0

przecież jak za każdym razem tworzysz na nowo wszystkie obiekty, łącznie z bitmapą, to co się dziwisz że ci znika...

0

Nie bede ukrywał ze jest to przykład przerobiony z C# gdzie bez problemowo operowałem na bitmapie, i po kazdym pictureBox1->refresh() zawartość picture box'a zapisywała sie sie do bitmapy, klonowała i wyswietlała tak miałem w C#, natomiast w C++ nie da sie zadeklarować bitmapy jako zmiennej globalnej pojawia sie dziwny blad (bitmap ^). W zwiazku z tym problemem przesiadłem sie na MFC ale tam mam inne dziwne problemy :D

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