- •Псков ппи
- •Содержание
- •Введение
- •Лабораторная работа №1
- •Задание.
- •Краткая справка.
- •Краткая справка.
- •Рекомендации по выполнению задания
- •Лабораторная работа №2
- •Задание
- •Рекомендации по выполнению задания
- •Лабораторная работа №3
- •Задание
- •Краткая справка.
- •Рекомендации по выполнению задания
- •Лабораторная работа №4
- •Задание
- •Краткая справка.
- •Рекомендации по выполнению задания
- •Лабораторная работа №5
- •Задание
- •Краткая справка.
- •Рекомендации по выполнению задания
- •Лабораторная работа №6
- •Задание
- •Краткая справка.
- •Свойства управляющего элемента RadioButton
- •События управляющего элемента RadioButton
- •Свойства управляющего элемента CheckBox
- •Свойства управляющего элемента TextBox
- •События управляющего элемента TextBox
- •Рекомендации по выполнению задания
- •Лабораторная работа №7
- •Задание
- •Краткая справка.
- •Рекомендации по выполнению задания
- •Литература
- •Приложение Класс Form
- •Открытые конструкторы
- •Открытые свойства
- •Открытые методы
- •Открытые события
- •Защищенные свойства
- •Защищенные методы
- •Класс Graphics
- •Открытые свойства
- •Открытые методы
- •Защищенные методы
- •Антонов Игорь Вадимович Бруттан Юлия Викторовна с#. Программирование на языке высокого уровня
Краткая справка.
Диалоговое окно — это форма, обладающая особыми характеристиками. Для диалоговых окон, как правило, нельзя изменять их размер. Кроме того, в диалоговых окнах обычно не используются элементы управления, помещаемые в верхнюю часть обычных форм: ControlBox, MinimizeBox и Maximize Box. Для открытия модального диалогового окна (это диалоговое окно, которое должно быть обязательно закрыто для возвращения к исходной форме) используется метод ShowD1alog().
Код для открытия диалогового окна может выглядеть следующим образом:
DialogForm myDialog= new DialogForm();
myDialog.ShowDialog(this);
Метод ShowDialog() возвращает переменную DialogResult, которую можно использовать для проверки того, на какую кнопку нажал пользователь, если имеется несколько кнопок.
Для создания диалогового окна необходимо добавить форму в проект. Затем для формы устанавливаются свойства:
FormBorderStyle: FixedDialog
MaximizeBox: false
MinimizeBox: false
ControlBox: false
StartPosition: CenterParent
Для размещения в диалоговой панели элементов управления следует в режиме дизайна формы отобразить панель компонентов форм («View»–>«Toolbox») и перетаскивать с неё мышью нужные компоненты на поверхность формы. Для размещённого таким образом элемента формы можно, используя мышь, редактировать его размеры и положение. Другие параметры управляющих элементов настраиваются через панель свойств, которую можно вызывать через контекстное меню, активизируемое по правой кнопке мыши.
Основной элемент управления, размещаемый в диалоговых окнах — кнопка. Для активизации (генерации события) кнопку можно либо щелкнуть мышью, либо, если фокус ввода находится на кнопке, нажать пробел. Кнопка реализована в классе Button.
Комбинированные списки (объекты ComboBox) позволяют пользователю производить выбор из списка заранее определенных элементов. При этом пользователь может не только выбрать готовое значение из списка, но и ввести свое собственное.
Свойство Text позволяет получить доступ к тексту в поле редактирования. При работе с ComboBox это свойство используется чаще всех остальных. Свойство Items позволяет задать список заранее определенных элементов.
Среда .NET содержит реализацию ряда стандартных диалоговых панелей. Диалог выбора цвета инкапсулирует класс ColorDialog. Чтобы вывести диалоговую панель выбора цвета на экран, необходимо создать объект этого класса и вызвать для него метод ShowDialog. После отображения панели на экране пользователь может выбрать из нее цвет и нажать кнопки OK или Cancel для подтверждения выбора цвета или отказа от него. Когда диалоговая панель закрывается, метод ShowDialog возвращается значения DialogResult.OK и DialogResult.Cancel в зависимости от того, какую кнопку нажал пользователь.
Для определения цвета, выбранного пользователем, после закрытия диалоговой панели можно обратиться к свойству Color класса ColorDialog.
Рекомендации по выполнению задания
Пункт 1
Рекомендуется поля цвета и размера пера поместить в класс фигуры и добавить в конструкторы классов фигуры и прямоугольника соответствующие аргументы, используемые для инициализации данных полей.
Сохранение новых полей в файлах будет обеспечено автоматически за счёт работы механизма сериализации.
Класс прямоугольника должен быть также модифицирован для обеспечения возможности рисования прямоугольников с произвольной толщиной и цветом линии и имеющих фон заданного цвета. Для этого при вызове конструктора пера, используемого для рисования итогового контура прямоугольника, следует передавать ему определённый размер и цвет. Для заливки фона прямоугольника следует до рисования контура прямоугольника вызывать метод FillRectangle, которому передаётся кисть (тип SolidBrush) нужного цвета.
Пункт 3
Для реализации этого пункта задания потребуется спроектировать собственную диалоговую панель выбора толщины линии. Для этого к проекту следует добавить новую форму («Project» - «Add Windows Form…») и настроить её свойства в соответствии с рекомендациями из справки к работе. Форме следует дать англоязычное имя, отражающее её назначение. В форме следует разместить две кнопки и комбинированный список. Кнопке «OK» следует задать значение «OK» свойства DialogResult, кнопке «Cancel» - значение «Cancel».
Обработчики соответствующих команд меню в классе Form1 должны создавать диалоговые панели и считывать после их закрытия результат выбора пользователя. Как это сделать для стандартных панелей выбора цвета указано в справке к работе. Для получения от собственного диалога выбранной пользователем толщины линии потребуется добавить в класс этого диалога соответствующее свойство или метод (public), возвращающий значение свойства Text элемента Combobox. Узнать имя поля, которое присвоил дизайнер Visual Studio этому элементу формы, можно в файле <имя_формы>.Designer.cs или в панели «Class View».
Для преобразования текстового значения этого поля в целочисленное можно вызвать метод Convert.ToInt32.
В класс Form1 потребуется добавить поля данных, в которых будут храниться текущие настройки цвета линии, цвета фона фигуры и толщины линии. При создании новых объектов фигур эти поля должны использоваться для инициализации объектов. Значения по умолчанию им следует присвоить в конструкторе класса Form1. Новые значения должны в них записываться в результате обработки команд меню по выбору цвета линии, цвета фона фигуры и толщины линии.
