Киберфак – бесплатно скачать презентации PowerPoint, лекции, рефераты, шпоры, курсовые cyberfac logo
cyberfac.ru
На главную | Регистрация | Вход
  Статьи  
Главная » Статьи » Информатика » Высокоуровневые методы информатики и программирования

Многооконный интерфейс и средства его создания

Полезная статья? Пожалуйста, поставьте "+"
К содержанию

Многооконные приложения Delphi

Приложение как правило не может ограничиться одним окном и нужно решить вопрос управления окнами. Есть две различные модели приложений: с интерфейсом одного документа (SDI) и с интерфейсом множества документов (MDI).

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

В приложениях MDI имеется родительское (первичное) окно и ряд дочерних окон (пример:Wоrd,Excel). Когда выгодно отображать информацию в нескольких окнах, которые совместно используют элементы интерфейса (например, меню). Окна документов управляются и огранииваются родительским окном. Если размер родительского окна уменьшается, то дочерние окна могут исчезать из поля зрения.

Использовать модель MDI нужно только тогда, когда все дочерние окна будут содержать идентичные объекты.

Не нужно использовать модель MDI, если:

  1. дочерние окна разного типа (текстовые документы и таблицы);
  2. для дочернего документа используется свойство «Всегда наверху»;
  3. нужно управлять размерами дочерних окон;
  4. делать дочерние окна невидимыми и т.п.

Управление формами в приложениях с интерфейсом множества документов (MDI).
Число дочерних окон заранее неизвестно – пользователь может создавать их столько, сколько ему потребуется. Окна документов располагаются в клиентской области родительской формы. Поэтому чаще всего целесообразно в родительской форме ограничиться только главным меню, инструментальными панелями и, если необходимо, панелью состояния, оставляя все остальное место в окне для окон дочерних форм. При этом окно родительской формы в исходном состоянии разворачивают на весь экран.
Из родительской формы можно управлять дочерними формами
Дочернюю форму нельзя уничтожить, пока не уничтожена родительская форма.
Для создания приложения MDI необходимо спроектировать родительскую и дочернюю формы. В родительской форме свойство FormStyle устанавливается в fsMDIForm, а в дочерней – в fsMDIChild. Поскольку дочерние формы будет создавать сам пользователь в процессе работы приложения, дочернюю форму необходимо исключить из числа создаваемых автоматически (с помощью Опций окна Проекта).
Обработчик команды, по которой пользователь задает в родительском окне создания нового окна документов – нового экземпляра дочерней формы:
Var
<имя>: <имя класса дочерней формы>;
begin
<имя>:=<имя класса дочерней формы>.Create(Application);
<операторы настройки, если они нужны>
<имя>.Show;
end;

Переменная, объявленная в этой процедуре, используется для создания произвольного временного имени (указателя) вновь создаваемого объекта – формы.
В родительской форме используется ряд свойств, позволяющих управлять дочерними окнами. Все они доступны только для чтени и только в момент выполнения.
MDIChildCount – количество открытых дочерних окон.
MDIChildren[I:integer] – доступ к I-му окну (окна индексируются в порядке из создания. Например, для задания уникального имени вновь созданного окна NewF:
NewF.Caption:='Документ '+IntToStr(MDIChildCount);
Следующий пример показывает процедуру, с помощью которой из родительской формы Form1 можно закрыть (свернуть) все дочерние окна, начиная с последнего:
var
I:integer;
begin
with form1 do
for I:=MDIChildCount-1 downto 0 do
MDIChildren[I].Close;
end;

Метод Cascade располагает все открытые (не свернутые) окна каскадом.
Метод Tile располагает все открытые (не свернутые) окна мозаикой. При этом учитывается свойство родительской формы TileMode. Если TileMode=tbVertical, то упорядочивание производится по вертикали, а если TileMode=tbHorizontal, то упорядочивание производится по горизонтали. Метод ArrangeIcon упорядочивает расположение пиктограмм свернутых окон..
Обычно родительская и дочерние формы имеют разные главные меню. Меню дочерних форм не должно появляться в окнах документов, а должно всегда встраиваться в главное меню родительской формы. Поэтому свойство AutoMerge компонента типа MainMenu на приложение MDI не влияет: встраивание меню происходит независимо от значения этого свойства. А места, на которые встраиваются разделы меню дочерней формы, определяются значениями свойства GroupIndex каждого раздела меню так же, как это имеет место в обычных многооконных приложениях при задании свойства AutoMerge=true.


Категория: Высокоуровневые методы информатики и программирования | Добавил: Ni-Cd (01 Декабря 2011)
Просмотров: 1939 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
  Полезные материалы  

В нашем каталоге файлов можно найти много полезной информации. Также советуем заглянуть в каталог статей: в нем есть полезные статьи по темам: Экономика предприятия, Общая экономика, Финансы и Кредит, также Словарь терминов по экономике, Маркетинг, Бухучет и Мировая экономика
Также есть полезная страница Факультеты МИФИ, которая расскажет о том, какие есть в МИФИ факультеты.
Меню
 

Навигация
Высокоуровневые методы информатики и программирования [28]
Информатика и программирование [34]
Информационные системы в экономике [36]
Языки программирования и методы трансляции [15]
Алгоритмизация и программирование [61]
 

Поиск
 

Онлайн
Онлайн всего: 2
Гостей: 2
Пользователей: 0
 

Статистика


Рейтинг@Mail.ru

 


2007 - 2024 © Ni-Cd. All Rights Reserved