Алгоритмическое мышление при решении задач (на примере языка C#). Шамшев А.Б - 109 стр.

UptoLike

Составители: 

109
//то это означает, что ее «таскаем»
carringIndex = i;
//и выходим, потому что мы ее нашли
return;
}
}
//если дошли досюда, это означает, что пользователь не попал
//ни по одной фигуре, а следовательно, он не «таскает» их
carringIndex = -1;
}
/// <summary>
/// индекс квадратика, который «таскается»
/// </summary>
public int carringIndex = -1;
void drawPanel_MouseClick(object sender, MouseEventArgs e) {
//если нажата не правая кнопка мыши,
if (e.Button != MouseButtons.Right) {
//то выходим
return;
}
//создаем новый квадрат
var newF = new Square(e.X, e.Y, 10);
//и добавляем его в список квадратов
figureList.Add(newF);
//и вызываем перерисовку панели
drawPanel.Invalidate();
}
public List<Square> figureList = new List<Square>();
void drawPanel_Paint(object sender, PaintEventArgs e) {
for (int i = 0; i < figureList.Count; i++) {
figureList[i].draw(e.Graphics);
}
}
}
/// <summary>
/// класс, который отвечает за работу с одним квадратом
/// </summary>
public class Square {
/// <summary>
/// координаты центра квадрата по X
/// </summary>
public int x;
/// <summary>
/// координаты центра квадрата по Y
/// </summary>
public int y;
/// <summary>
/// размер квадрата
/// </summary>