Привет, Гость! Регистрация RSS
Суббота, 23.11.2024
Главная » Статьи » Основные статьи сайта

Создание и использование MDI

Для того чтобы создать готовый  шаблон, следует выполнить команду  File/ New/ Other  и на странице  Projects  выбрать пиктограмму MDIApplication.

Многодокументное приложение (MDI Application) способно загрузить и использовать одновременно несколько документов или объектов. Каждый новый документ открывается в создаваемом дочернем окне.  Шаблон содержит кнопки для изменения расположения окон, а в меню Windows добавляются имена всех открытых документов. 

Многодокументное приложение способно загрузить и использовать одновременно несколько документов или объектов. Каждый новый документ открывается в создаваемом дочернем окне.  Шаблон содержит кнопки для изменения расположения окон, а в меню Windows добавляются имена всех открытых документов.

Интерфейс MDIпредставляет собой приложение, в котором многие формы (или окна) могут быть открыты внутри одной контейнерной формы (или контейнерного окна). Контейнерная форма (окно) на­зывается родительской. Она предоставляет рабочее пространство для всех дочерних форм (окон), открытых в приложении. Во многих программах Windowsформа MDI использу­ется в качестве главной формы. Например, в программе MicrosoftExcel несколько рабо­чих журналов могут быть открыты одновременно, причем каждый из них выводится в от­дельном дочернем окне. Приложения подобного типа используются для создания программ типа графических или текстовых редакторов.

При создании MDI-приложения  автоматически будут созданы три формы и соответствующие им файлы модуля. Также будет создан главный файл приложения.

Шаблон MDI-приложения содержит кнопки для изменения расположения окон,  а в меню Windows добавляются имена всех открытых документов.

Для главной формы приложения свойство FormStyle  установлено  равным  - fsMDIForm, для дочерней формы -  fsMDIChild.  Дочерняя форма фактически является обычной формой, в которую помещен один объект типа Tmemo. Могут быть дочерние формы разных типов, например, одна  -  для просмотра  текста, другая – для изображений.

Существует ряд правил для оформления главного и дочерних окон:

- В  главном окне размещаются обычно только такие элементы управления, как меню, панели инструментов и строка состояния.

Остальная клиентская область предназначается для размещения дочерних окон.

Дочерние окна не имеют панелей инструментов и строки состояния.

- Объект TForm имеет несколько свойств, специфичных для MDI-приложений.

Свойство ActiveMDIChild (тип TForm) возвращает дочер­ний объект TForm, имеющий в текущий момент времени фокус ввода. Оно полезно, когда родительская форма содержит панель инструментов или меню, команды которых распространяются на открытую дочернюю форму.

Свойство MDIChildren [I: Integer] (тип TForm) яв­ляется массивом, содержащим список созданных дочерних форм. Окна в данном массиве нумеруются, начиная с нуля, в зависимо­сти от их текущего положения на экране. Нумерация изменяется после каждого переупорядочения окон.

Свойство MDIChildCount возвращает количество элементов в массиве MDIChildren.

Эти свойства обычно используются при выполнении какого-либо действия над всеми открытыми до­черними формами.

Особенность дочерних окон – при попытке ее закрытия путем нажатия кнопки закрытия в верхнем правом углу, она не закрывается, а минимизируется, т.к. по умолчанию для всех дочерних окон параметр Action имеет значение caMinimize. Чтобы избежать этого, необходимо создать обработчик события OnClose, в котором  параметру Actionприсвоить значение caFree.  

procedure TfrmChildForm.FormClose(Sender: TObject; var Action: TCloseAction); 

begin

  Action := caFree;

end;  


Нравится
Категория: Основные статьи сайта | Добавил: Dark_Green (20.11.2012)
Просмотров: 3855 | Теги: MDI Application, Интерфейс MDI | Рейтинг: 0.0/0

Другие статьи
»
Структурная обработка исключительных ситуаций (0)
»
Изменение громкости на Delphi (0)
»
Создание и использование MDI (0)
»
Метод MessageBox (0)
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]