Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л.р.№1 ооп.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
111.62 Кб
Скачать

Объектно-ориентированное программирование Лабораторная работа №1 13 13

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

Тема работы: Управление приложением и экраном.

Цель работы: Изучить основные методы и свойства объектов Application и Screen.

Ход работы:

  1. Изучить методические рекомендации к лабораторной работе.

  2. Создать новый объект Application (приложение), состоящий из произвольного количества форм. На форме должны располагаться объекты соответственно заданиям приведенным ниже.

  3. Вывести на поверхность формы путь и имя исполнимого файла. В задании использовать функции ExtractFilePath и ExtractFileName.

  4. Определить для объектов формы контекстные подсказки. В задании использовать следующие свойства: Hint (текст подсказки), HintPause (временные задержки), HintHidePause, HintColor (цвет фона).

  5. Реализовать метод, который в цикле от 1 до 10000 отображает соответствующее значение цикла в объекте Edit. Проанализировать работу метода с инструкциями ProcessMessages и Edit.Refresh.

  6. В теле цикла поместить операторы проверки условий прерываний цикла и выхода из цикла, а также обеспечить возможность закрытия приложения (метод Terminate).

  7. Написать метод – обработчик события OnIdle при простое приложения, используя при этом свойство Active.

  8. Реализовать программное переключение раскладки клавиатуры.

  9. Отобразить на форме перечень экранных шрифтов.

  10. Изменить вид указателя мыши для приложения (свойство Cursor объекта Screen).

  11. Определить размеры экрана, используя свойства Height и Width объекта Screen.

  12. Вывести число форм приложения.

  13. Вывести форму в центре экрана.

  14. Оформить отчет.

Содержание отчета:

  1. Цель, ход работы;

  2. Листинг созданного приложения и его модулей;

  3. Результаты работы программы;

  4. Анализ работы методов;

  5. Вывод.

Контрольные вопросы:

  1. Объект Application;

  2. Назначение методов Run, Inizialize, CreateForm;

  3. Как выполняется вывод имени пути исполнимого файла?

  4. Назначение события OnIdle;

  5. Как осуществляется продолжение работы приложения во время выполнения цикла?

  6. Как осуществляется переключение раскладки клавиатуры?

  7. Объект Screen, его свойства и методы.

Методические рекомендации

Часто создание прикладных программ (приложений) требует от разработчика действий по управлению приложением и экраном как отдельными объектами. В Delphi эта возможность обеспечивается объектами Application класса ТАрр1iсаiоn и Screen класса ТScreen, которые представляют собой приложение и экранную среду его выполнения соответственно.

Объект Application

Приложение в целом описывается классом TApplication. При каждом запуске Delphi автоматически создает объект типа ТАрр1iсаiоn с именем Арр1iсаiоn. По своей сути объект Application является окном Windows со стандартной оконной процедурой API WndProc, но Delphi скрывает неудобный для программиста способ общения с приложением на уровне функций АРI и предоставляет возможность работать на более высоком уровне.

Объект Арр1iсаiоп недоступен при конструировании приложения, но его автоматическое создание отображается в исходном файле проекта (.dpr):

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin

Application.;

Application.CreateForm(TForm1, Form1);

Application.Run;

end.

В начале работы над новым приложением к файлу проекта автоматически добавляются вызовы трех методов: Initialize, CreateForm, Run.

Initialize - инициализирует приложение в целом, при этом также выполняются операторы раздела initialization всех модулей приложения.

CreateForm - создает форму, тип которой задается параметром FormClass (TForm1), и присваивает ее переменной, определяемой параметром Reference (Form1). Владельцем созданной формы является объект Application. Процедура обычно вызывается автоматически для каждой формы в составе приложения. При необходимости можно отменить автоматическое создание формы, исключив эту процедуру из файла проекта. Однако перед любым использованием формы она должна быть уже создана, иначе произойдет ошибка.

Run - запускает приложение, обычно ее вызов является последним оператором проекта.

Путь и имя исполнимого файла

Часто использование объекта Application ограничивается указанными тремя методами, однако у него есть и другие методы, свойства и события, применение которых позволяет повысить качество разрабатываемых приложений:

  • Title - определяет название приложения и содержит текст, идентифицирующий приложение. По умолчанию название приложения совпадает с именем ехе-файла программы, первоначально это project1. (Application.Title:= ‘Пример совйства’; Form1.Caption:= Application.Title)

  • ExeName - содержит путь и имя исполняемого файла приложения — спецификацию ехе-файла. Оно доступно для чтения на этапе выполнения приложения (Label1.Caption:=Application.ExeName)

При необходимости из спецификации файла с помощью функций ExtractFileName и ExtractFilePath можно получить путь и имя файла:

Str:= ExtractFilePath (Application.ExeName) // В конце строки,. содержащей каталог, имеется слэш (\).

Подключение к приложению файла справки

Свойство HelpFile типа String указывает имя справочного файла, используемого приложением. Оно доступно во время выполнения приложения. По умолчанию значением свойства HelpFile является пустая строка. Если файл не задан, то методы и свойства, относящиеся к справке, не действуют.

Если приложение использует несколько справочных файлов, то эти файлы в зависимости от ситуации могут поочередно выбираться в качестве активного.

procedure TForml.rnnuHelpClick(Sender: TObject);

begin Application.HelpFile := ‘help.hlp’;

Application.HelpCommand(HELP_FINDER, 0);

end;

procedure TForml.mnuHelpAdditionClick(Sender: TObject);

begin Application.HélpFile := ‘addition.hlp’;

Application.HelpCommand(HELP FINDER, 0);

end;

при выборе пункта меню mnuHelp вызывается основной справочный файл help.hlp, а при выборе пункта меню mnuHelpAddition — справочный файл addition.hlp.

Функция HelpCommand (Command: Word; Data: longint):Boolean обеспечивает возможность доступа к любой команде Windows Help API. Этот метод запускает файл winhelp.ехе справочной системы и передает ему команду, указанную параметром Command, а также дополнительные данные, определяемые параметромData. В результате появляется окно справочной системы Windows, с помощью которого пользователь может получить нужные сведения.

Передаваемая команда указывает тип требуемой помощи. Чаще всего используются команды:

HELP_FINDER (отображается диалоговое окно Help Topics (Разделы помощи); параметр DATA игнорируется);

HELP_KEY (отображается тема, идентифицированная ключевым словом, адрес которого содержит параметр DATA);

HELP_CONTEXT (отображается тема, определенная значением параметра DATA)

Функция HelpContext (Context: THelpContext): Boolean открывает окно справки и отображает указанный параметром Context (целое число) экран. До вызова метода свойству HelpFile должно быть присвоено имя существующего справочного файла. Параметр Context идентифицирует справочный контекст внутри справочного файла и связан с элементами управления через одноименное свойство HelpContext этих элементов.

// Для объекта-редактора следует выполнить инструкцию Edit1.HelpContext := 17;

// или установить это свойство через Инспектор объектов

procedure TForm1.Button1Click(Sender: TObject);

begin

Application.HelpFile:= 'main.hlp';

Application.HelpContext(17);

end;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]