Я полностью понял задание.
У вас есть исходные данные - координаты где была нажата левая кнопка.
Прямоугольник это простая фигура имеющая 4-е координаты (углы).
Для расчета прямоугольника достаточно знать две координаты - начальная и противоположная по диоганали
x1,y1 ---------------------- x2,y2
x,y ---------------------- x3,y3
x3,y3 = x2,y
x1,y1 = x,y2
и совершенно все равно куда у тебя ушла фигура от начальной точки - вверх или вниз.
Далее делаем обработчик перемещения мыши (WinApi вполне подойдет) в нем проверяем нажата ли еще кнопка мыши и если нажата то берем и координату в которой в данный момент находится мышь (начальные координаты у нас уже есть - мы их выловили с помощью обработчика нажатия кнопки мыши допустим MouseButtonDowm), только получили координату и сразу перерисовываем прямоугольник (формулка выше) .
Обработчик MouseMove вызывается каждый раз когда мышь передвигается хоть на пиксель.
LineTo как изменять размер во время движения не понимаю....
Только дорисовывать или зарисовать прошлую линию цветом фона и нарисовать новую.
помогите с цыклом который ето будет делать
Обработчика WinApi MouseMove и будет твоим циклом.
Могу предложить решение в лоб:
Как понимаю ты рисуеш линии на форме а я могу предложить кинуть на форму pictureBox и рисовать по нему.
Тупо в начале обработчика движения мыши делать pictureBox.clean() и прорисовывать прямоугольник по новой (правда мерцать может)
Мое сонное видение задачи
