Как нарисовать несколько линий? - C#
Формулировка задачи:
У меня есть кнопка, по её нажатии рисуется линия, с заданными координатами. Если я сменю координаты(во время работы приложения) и нажму на кнопку, то линия исчезает и появляется новая, с другими координатами. Как мне сделать так, чтобы при нажатии на кнопку, рисовалась
новая
линия?Решение задачи: «Как нарисовать несколько линий?»
textual
Листинг программы
- public partial class Form1 : Form
- {
- List<Point> circles = new List<Point>(); //список, в котором хранятся сведения о рисуемых фигурах (точко - центры кругов)
- public Form1()
- {
- InitializeComponent();
- this.Load += Form1_Load; //к событию загрузки формы подписываем обработчик Form1_Load
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- this.Paint += Form1_Paint; //к событию Paint формы подписываем обработчик Form1_Paint
- this.MouseClick += Form1_MouseClick; //к событию клика по форме подписываем Form1_MouseClick
- }
- void Form1_MouseClick(object sender, MouseEventArgs e)
- {
- circles.Add(new Point(e.X, e.Y)); //при щелчке по форме координаты мыши записываются в список фигур
- Invalidate(); //форма перерисовывается, при этом происходит событие Paint и запускается Form1_Paint
- }
- void Form1_Paint(object sender, PaintEventArgs e)
- {
- foreach (Point point in circles) //перебираются все фигуры из списка
- {
- e.Graphics.FillEllipse(Brushes.Red, point.X, point.Y, 30f, 30f); //и каждая из них рисуется на форме
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д