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

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



Пункт 1

Следует реорганизовать меню программы. На верхнем уровне меню слева должен находится пункт «Файл», справа – «Окно». В разделе меню «Файл» должны быть команды «Новый», «Открыть», «Сохранить», «Сохранить как…». Из раздела «Окно» следует удалить команду «Новое», а её обработчик связать с пунктом меню «Файл»-«Новый». При обработке команд сохранения и открытия файлов следует создавать соответствующие стандартные диалоговые панели и использовать результаты выбора пользователя для сериализации и десериализации массива фигур. Обработчики команд «Сохранить» и «Сохранить как…» должны различаться только обработкой ранее сохранённого файла. В первом случае он должен сохраняться без создания и вывода файлового диалога. Для начальной блокировки этих пунктов меню надо установить их свойство Enabled в значение false. При создании и закрытии окон документов следует управлять состоянием этих пунктов меню, блокируя и разблокируя их в соответствии с ситуацией.

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

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

saveFileDialog.InitialDirectory = Environment.CurrentDirectory;

В поле Filter классов файловых диалогов следует задавать шаблон, соответствующий имени вашего редактора и расширению файлов рисунков, создаваемых в нём.

Чтобы обратиться в коде родительской MDI-формы к полям сохраняемой дочерней формы, можно использовать свойство this.ActiveMdiChild, содержащее ссылку на активное окно документа. Для изменения заголовка окна можно в программе изменять значение свойства формы Text.

Пункт 2

Для обработки попытки закрытия окна формы следует в дочерней MDI-форме реализовать обработчик события FormClosing. Окно запроса о сохранении документа следует выдавать только при наличии изменений в документе. То есть, оно не должно выдаваться при закрытии пустого окна или окна, отображающего документ, прочитанный из файла или записанный в файл и не содержащий изменений. Для отслеживания соответствующих состояний документа следует добавить в класс формы переменную–флаг модификации документа. Чтобы метод MessageBox.Show создавал окно с тремя кнопками, в качестве третьего аргумента ему следует передавать константу MessageBoxButtons.YesNoCancel. Метод в данном случае может возвращать константы DialogResult.Yes, DialogResult.No, DialogResult.Cancel.

Отказ от закрытия формы (выбор Cancel) должен приводить к установке в true свойства Cancel второго аргумента обработчика события FormClosing.






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



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