Читать «Учебник по Delphi 4.0» онлайн - страница 30

Unknown

Выберите команду View/Forms, и появится диалоговое окно View Form.

Выберите OKRightDlg2 и щелкните на ОК.

Переместите OKRightDlg2 в нижнюю часть экрана. Ваш экран должен выглядеть примерно так, как на рис. 1.11.

Рис. 1.11. Изменение распространяются только в одном направлении — от родителей к потомкам

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

Создание приложений SDI

Термин SDI (Single Document Interface) дословно означает одно-документный интерфейс и описывает приложения, способные загрузить и использовать одновременно только один документ. Программа Notepad, приведенная на рис. 1.12, является ярким представителем такого класса программ.

Следует сказать несколько слов о термине документ. Приложения становятся все более объектоцентричными, т. е. они работают с неким центральным объектом, в который могут быть внедрены внешние объекты. В общем случае эти внешние объекты обрабатываются другим специализированным приложением. Примером может служить Wordpad (см. рис. 1.5), позволяющий внедрять любые OLE-объекты в свои файлы. Но он остается при этом SDI-приложением, так как может работать только с одним объектом (или документом в широком смысле этого слова) Wordpad.

Рис. 1.12.Программа Notepad как пример SDI-приложения

Способность одновременно работать только с одним объектом не мешает приложению использовать дополнительные формы, например диалоговые окна, панели инструментов и прочее (на рис. 1.13 показаны панели инструментов в окне Wordpad). Для реализации этих возможностей в Delphi просто добавьте форму в ваше приложение и установите ее свойство FormStyle равным fsSizeToolWin или fsToolWindow.

Еще одним примером может служить сама Delphi — огромное количество панелей инструментов, меню, разнообразных библиотек компонентов, взаимодействующих между собой форм… Но в целом она остается SDI-приложением, так как может загрузить и использовать одновременно только один объект.

Рис. 1.13. Программа Wordpad — SDI-приложение со многими формами

Пример SDI-приложения

Для демонстрации SDI создадим простую программу просмотра изображения.

.

Построение интерфейса

Обычно первым шагом построения программы является создание интерфейса. Не будем отступать от традиций, и выполним следующие действия.

1. Выберите команду File/New Application, и появится пустое приложение.

Совет: Delphi по умолчанию создает именно SDI-приложение. Однако хранилище объектов предоставляет возможность назначить новый шаблон проекта по умолчанию.

2. Установите следующие свойства форм.

Свойство Значение

Caption Image Viewer

Name frmMain

ShowHint True

3. Поместите компонент TPanel в форму. Установите следующие его свойства.

Свойство Значение

Align alTop

Caption –

4. Поместите три компонента TSpeedButton в TPanel и назовите их spbtnLoad, spbtnStretch и spbtnCenter. Установите следующие их свойства.

Свойство Значение

spbtnLoad.Hint Load

spbtnLoad.Left 8

spbtnLoad.Top 8

spbtnStretch.AllowAlIUp True