public void Add(CCircle obj) //добавление объекта { totalElements++; // увеличиваем общее количество элементво if (totalElements == size) // если количество элементов равно размеру, увеличиваем { ExpandarrElements(); } array[totalElements - 1] = obj; // добавляем объект в массив }
private void pictureBox_MouseDown(object sender, MouseEventArgs e) //нажатие мышки на pictureBox { if (e.Button == MouseButtons.Left) { int a = 0; for (int i = 0; i < Circle.GetTotalElements(); i++) { if (Circle.GetNow().Border(e.X, e.Y) == true) //если попали в круг { if (!ModifierKeys.HasFlag(Keys.Control)) //если нажат ctrl { Circle.GetNow().SelectChange(); //меняем выделение с true на false } a++; } Circle.GetNext(); //сдвигаем указатель на следующий } Circle.Get0(); if (a == 0) //если не попали в круг { CCircle Lap = new CCircle(e.X, e.Y); //создаем новый круг по полученным координатам Circle.Add(Lap); // добавляем круг в хранилище for (int i = 0; i < (Circle.GetTotalElements() - 1); i++) { Circle.GetNext(); } Circle.GetNow().SelectChange2(); //делаем созданный объект единственно выделенным for (int i = Circle.GetTotalElements() - 1; i >= 0; i--) { if (Circle.GetNow().Getselect1() == true) { Circle.GetNow().SelectChange(); } Circle.GetPrevious(); } Circle.Get0(); for (int i = 0; i < (Circle.GetTotalElements() - 1); i++) { Circle.GetNext(); } Circle.GetNow().SelectChange2(); Circle.Get0(); } pictureBox.Refresh(); } }