Задание
1. Создать новое приложение. На главной форме расположены следующие компоненты:
-
OleContainer
-
ListBox
-
Несколько элементов Label
-
MainMenu
И два невизуальных компонента:
-
OpenDialog
-
SaveDialog.
Примерный вид главного окна приложения представлен на рисунке. В OleContainer загружен рисунок (файл с расширением .bmp). Состояние сервера: osRunning.
2. Добавить на форму компонент, в котором будет отображаться информация об объекте: «не загружен» / «внедрение» / «связывание».
3. Меню должно содержать следующие команды:
-
«Файл» (Сохранить объект, Сохранить документ, Загрузить объект, Разорвать связь, Выход)
-
«Объект» (InsertDialog, новый объект Excel, новый объект Paint, внедренный из файла, внедренный из «имя презентации PowerPoint», связанный из файла, связанный из «имя документа Word», Выполнить команду);
-
«Свойства» (Свойства объекта, Команды сервера);
-
«Справка» (О программе).
Предусмотреть, чтобы пункты меню были доступны только в тот момент, когда соответствующие им действия могут быть выполнены. Например, пункт «Объект»| «Выполнить команду» может быть доступен только, если объект загружен в OleContainer, а в список ListBox помещен список доступных команд сервера.
4. Для всех команд меню создать соответствующие обработчики событий.
-
«Файл» | «Сохранить объект» - внедренный объект сохраняется в отдельном файле с расширением .ole;
-
«Файл» | «Сохранить документ» - объект сохраняется в документе сервера;
-
«Файл» | «Загрузить объект» - сохраненный объект загружается из ole – файла.
-
«Файл» | «Разорвать связь» - разрыв связи с объектом;
-
«Файл» | «Выход» - корректный выход из программы ( если была связь с объектом разорвать ее);
-
«Объект» | InsertDialog – объект и его способ загрузки в контейнер выбирается в диалоговом окне пользователем;
-
«Объект» | «Объект Excel» – создается новый объект;
-
«Объект» | «Объект Paint» – создается новый объект;
-
«Объект» | «Внедренный из файла» – имя файла определяется пользователем в диалоговом окне OpenDialog;
-
«Объект» | «Внедренный из «имя презентации PowerPoint» - в контейнер вставляется предварительно созданная презентация слайдов;
-
«Объект» | «Связанный из файла» » – имя файла определяется пользователем в диалоговом окне OpenDialog;
-
«Объект» | «Связанный из «имя документа Word» - в контейнер вставляется предварительно созданный документ;
-
«Объект» | «Выполнить команду» - серверу для выполнения передается команда, выбранная пользователем в списке ListBox$
-
«Свойства» | «Свойства объекта» - контейнер запрашивает у сервера имя объекта, состояние сервера и имя связанного документа, на основании полученной информации делается вывод: «объект – не загружен / внедрен / связан». Полученная информация выводится в компоненты Label главного окна приложения.
-
«Свойства» | «Команды сервера» - список команд сервера выводится в компоненте ListBox;
-
«Справка» | «О программе…» - окно с информацией оприложении и его авторе.