Здравствуйте. Необходтмо выполгить небольшое приложение, которое позволяет рисовать разлтчные геоиетрические объекты. Дело в том чтобы нарисовать одно изображение у меня вопросов нет, но если уже есть одга фигура и необходтмо нарисовать дургую (использование Refresh). Необходтмо чтобы нолвые фигуры оставыались на форме(PictureBox). Но все стирается и рисуется только одна новая фигура.
| Код | public partial class Form1 : Form { Boolean b; int x1 = 0, y1 = 0; int x2 = 0, y2 = 0; Graphics g; public Form1() { InitializeComponent(); g = pictureBox1.CreateGraphics(); }
private void toolStripButton1_Click(object sender, EventArgs e) {
}
private void Form1_Load(object sender, EventArgs e) {
}
private void Form1_Paint(object sender, PaintEventArgs e) { /*System.Drawing.Graphics graphics = this.CreateGraphics(); System.Drawing.Rectangle rectangle = new System.Drawing.Rectangle(50, 50, 150, 150); graphics.DrawEllipse(System.Drawing.Pens.Black, rectangle); graphics.DrawRectangle(System.Drawing.Pens.Red, rectangle); graphics.DrawLine(Pens.Black, new Point(100, 50), new Point(100, 150));*/ }
private void pictureBox1_MouseUp(object sender, MouseEventArgs e) { b = false; g.DrawRectangle(Pens.Black, x1, y1, e.X - x1, e.Y - y1); }
private void pictureBox1_MouseMove(object sender, MouseEventArgs e) { if (b) { pictureBox1.Refresh(); g.DrawRectangle(Pens.Black, x1, y1, e.X - x1, e.Y - y1); } }
private void pictureBox1_MouseDown(object sender, MouseEventArgs e) { b = true; x1 = e.X; y1 = e.Y; } }
|
Подскажите как мне правильно рганизоавать этот процесс. (Про рисование на Bitmao знаю, но при загрузке изображение оно все равно будет меняться).
|