1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление

ооп C#

Тема в разделе "Вопросы новичков и не только", создана пользователем kodblack, 9 ноя 2009.

  1. kodblack

    kodblack Гость

    Репутация:
    0
    язык программирования C#
    проложение - безразници или виндовс или консоль!


    Составить описание класса прямоугольников со сторонами, параллельными осям координат. Предусмотреть возможность перемещения прямоугольников на плоскости, изменение размеров, построение наименьшего прямоугольника, содержащего два заданных прямоугольника, и прямоугольника, являющегося общей частью (пересечением) двух прямоугольников.
    Написать программу, демонстрирующую все разработанные элементы класса.


    Зарание ОГРОМНОЕ спасибо!
     
  2. Setry

    Setry Гость

    Репутация:
    0
    писать не буду, ибо в лом, но могу дать существенную подсказку

    пусть класс, содержит такое поле:
    private int state = -2;
    далее в конструкторе класса делигируешь события MouseEventMove, MouseEventDown и MouseEventUp
    в MouseEventDown проверяешь, находится ли курсор внутри твоего прямоугольника, если да, то state=-1;
    в MouseEventUp state=-2;
    в MouseEventMove, если state==-1 то, к обеим точкам(образующим прямоугольник) прибавить значение
    чтобы узнать, какое значение прибавить, храни в еще одном поинте предыдущее нахождение курсора, а в событие тебе приходит текущее его положение, разность и надо прибавить


    кстати, так можно реализовать и поприкольней штуку, например в MouseEventDown проверять, не находится ли курсор около вершины, если да, то state=номер вершины;
    и тогда в MouseEventMove двигать только эту вершину

    (правда это получиться уже не прямоугольник)


    дерзай=)
     
Загрузка...

Поделиться этой страницей