Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Рекомендации по выполнению задания



Пункт 1

В диалоговой панели выбора размера рисунка следует использовать следующие элементы панели «Toolbox»: Button, RadioButton, GroupBox, CheckBox, TextBox.

Кнопке «OK» следует задать значение «OK» свойства DialogResult, кнопке «Cancel» – значение «Cancel». Следует добавить в класс этой диалоговой панели public поле типа Size, которое будет сохранять заданный размер рисунка, и обработчик щелчка по кнопке “OK”, который должен считывать из элементов панели заданный размер (с учётом состояния флажка ручного ввода размера) и сохранять его в указанной переменной.

Реализовать обработчик события CheckedChanged (изменение состояния флажка ручного ввода размера), в котором через свойство Enabled элементов GroupBox и TextBox следует управлять доступностью этих элементов для ввода и выбора в соответствии с состоянием флажка.

Обработчик соответствующей команды меню в классе Form1 должен создавать диалоговую панель выбора размера и считывать после её закрытия результат выбора пользователя.

Пункт 2

При создании новых окон рисунков следует задавать для них размер рисунка и учитывать его при выполнении операций с рисунком. Для этого надо добавить соответствующее поле к классу формы рисунка и реализовать конструктор этого класса, получающий в качестве аргумента размер рисунка. Этот конструктор должен вызываться из обработчика команды меню, создающей новое окно.

Для цвета нерабочей области окна рисунка (фон формы) в свойствах формы следует задать серый цвет (например, ControlDark).

Обработчик события Paint должен перед рисованием фигур рисунка заполнять рабочую область окна рисунка белым цветом (метод FillRectangle).

Обработчик отпускания кнопки мыши должен проверять условие попадания создаваемой фигуры в область рисунка и добавлять к рисунку только те фигуры, которые соответствуют этому условию.

При сохранении рисунка в файлах и чтении из файлов операции сериализации/десериализации массива фигур должны дополниться соответствующими действиями с размером рисунка.

Пункт 3

Для обеспечения обработки скроллинга следует установить в true свойство формы AutoScroll и задавать в конструкторе формы значение свойству AutoScrollMinSize, которое должно соответствовать размеру рабочей области окна рисунка.

При создании объектов фигур и их рисовании теперь следует учитывать, что в окнах со скроллингом координаты мыши, передаваемые обработчикам событий, и координаты, передаваемые методам класса Graphics, отсчитываются от левого верхнего угла видимой области окна, а не от левого верхнего угла рисунка, отображаемого в окне. Следовательно, координаты, отсчитываемые от верхнего левого угла полного рисунка, должны формироваться из оконных координат в результате их модификации на величину смещения, задаваемого полосами прокрутки. Эта величина доступна через свойство формы AutoScrollPosition, хранящее отрицательные значения ненулевых смещений видимой области рисунка по осям X и Y. Соответствующий параметр, позволяющий учесть смещение при скроллинге, потребуется добавить к методам рисования фигур для их корректного отображения в окнах со скроллингом.





Дата публикования: 2015-06-12; Прочитано: 213 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...