Как нарисовать несколько линий? - 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); //и каждая из них рисуется на форме
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы