Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы / DELPHI / ВМИПЛаб8.doc
Скачиваний:
16
Добавлен:
16.04.2013
Размер:
390.66 Кб
Скачать

Лабораторная работа № 8

Программирование многооконного пользовательского интерфейса

Цель работы: научиться разрабатывать программы (приложения), реализующие многооконный пользовательский интерфейс.

Продолжительность работы: 4 часа.

Теоретические сведения

Функциональные возможности, предоставляемые программой (приложением), как правило, распределяются между несколькими окнами, с которыми взаимодействует пользователь. Примером приложения с многооконным пользовательским интерфейсом является, в частности, программа текстового редактора, разработанного в предыдущих лабораторных работах. В текстовом редакторе функции открытия файла, сохранения файла и ряд других обеспечиваются специальными окнами - стандартными диалоговыми окнами, которым соответствуют компоненты на палитре компонентов в системе Delphi.

Программист может разрабатывать приложения, предусмотривая создание и других окон, отличных от стандартных. В этом случае ему приходится решать вопрос управления окнами. Существуют две различные модели приложений: с интерфейсом одного документа(SDI - SingleDocumentInterface) и с интерфейсом многих документов (MDI - Multiple Document Interface).

В большинстве случаев предпочтение отдается инттерфейсу SDI. Этот интерфейс не обязательно предполагает наличие действительно только одного окна, как в приложенияWindowsтипаКалькулятор. Такое приложение, какПроводникWindows, также являетсяSDI-приложением, но в нужные моменты оно создает вторичные окна для поиска папок или файлов, задания параметров, просмотра свойств файлов и других целей.

Примером MDI-приложения являетсяMicrosoft Word.ВMDI-приложении имеется родительское (первичное) окно и ряд дочерних окон, называемых также окнами документов.Окна документов управляются и ограничиваются родительским окном. Случаи, когда нужно использовать модельMDI, довольно редки. Эту модель применяют только тогда, когда все дочерние окна будут содержать идентичную информацию - например, текстовые документы или электронные таблицы.

Форма со сведениями о программе

Любой программный продукт, предназначенный для распространения (например, текстовый редактор, система программирования и т.п.), должен иметь окно, в котором содержатся сведения названии программы, ее версии и разработчиках. Обычно это окно появляется на экране при выборе в меню команды "О программе" или "About".

Создать такое окно с помощью системы Delphi можно, воспользовавшись формой-шаблономAbout box.Эта форма выбирается на закладкеFormsв окнеNewItems, которое активизируется командой File|New. После включения формы в проект ее нужно настроить, задав необходимые значения свойствам компонентов, имеющихся в этой форме, и подключить к пункту меню"О программе" или "About".

Настройка формы начинается заданием значений ее свойств

Name = fmABOUT

Caption = О программе

Д

Рис.1. Пример эскиза формы со сведениями о программе

алее в форме fmABOUT нужно исправить значения свойства Caption четырех компонентов Label, чтобы они соответствовали эскизу, показанному на рис.1.

Чтобы сохранить проект, дополненный этой формой, нужно выбрать команду File | Save All и задать имя ABOUT для файла с модулем формы fmABOUT. Модуль ABOUT нужно подключить к модулю главной формы, сначала выделив главную форму, а затем выбрав команду File | Use Unit и указав модуль ABOUT в диалоговом окне Use Unit.

Созданную форму необходимо связать с пунктом меню в главной форме. Для этого меню нужно дополнить пунктами "Справка" и "О программе" (рис.2) и после щелчка на пункте меню "О программе" в окне текстового редактора набирать оператор

fmABOUT.ShowModal;

выполнение которого активизирует форму fmABOUT.

Файл

Правка

Формат

Справка

Создать

Вырезать

Шрифт

О программе

Открыть

Копировать

Цвет фона

Сохранить как

Вставить

Выход

Найти

Заменить

Рис.2. Дополненное главное меню

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Мы не исправляем ошибки в тексте (почему?), но будем благодарны, если вы все же напишите об ошибках.

Соседние файлы в папке DELPHI