Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1-9.docx
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
200.05 Кб
Скачать

Использование модуля

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

В листинге 6.9 приведен вариант программы Поездка на дачу. Процедура обработки события onkeypress в полях ввода исходных данных обращается к функции IsFloat, которая находится в модуле my_unit.pas, поэтому в списке используемых модулей указано имя модуля my_unit.

Листинг 6.9. Использование функции из модуля программиста

 

01.unit fazenda_;

02.interface

03.uses

04.Windows, Messages, SysOtils, Variants, Classes, Graphics, Controls,

05.Forms, Dialogs, StdCtrls,

06.my_unit; // модуль программиста

07.type

08.TForml = class(TForm)

09.Editl: TEdit; // расстояние

10.Edit2: TEdit; // цена литра бензина

11.Edit3: TEdit; // потребление бензина на 100 км

12.CheckBoxl: TCheckBox; // True — поездка туда и обратно

13.Buttonl: TButton; // кнопка Вычислять

14.Label4: TLabel; // поле вывода результата расчета

15.Labell: TLabel;

16.Label2: TLabel;

17.Label3: TLabel;

18.procedure EditlKeyPress(Sender: TObject; var Key: Char];

19.procedure Edit2KeyPress(Sender: TObject; var Key: Char);

20.procedure Edit3KeyPress(Sender: TObject; var Key: Char);

21.procedure ButtonlClicklSender: TObject);

22.private

23.1 Private declarations )

24.public

25./ Public declarations }

26.end;

27.var

28.Forml: TForml;

29.implementation

30.1$R *.dfm}

31.// нажатие клавиши в поле Расстояние

32.procedure TForml.EditlKeyPress(Sender: TObject; var Key: Char);

33.begin

34.if Key = Char(VK_RETURN)

35.then Edit2.SetFocus // переместить курсор в поле Цена

36.else If not IsFloat(Key,Edit2.Text) then Key := Chr(O);

37.end;

38. 

39.// нажатие клавиши в поле Цена

40.procedure TForml.Edit2KeyPress(Sender: TObject; var Key: Char);

41.begin

42.if Key = Char(VK_RETURN|

43.then Edit3.SetFocus // переместить курсор в поле Потребление

44.else If not IsFloat(Key,Edit2.Text) then Key := Chr(O);

45.end;

46.// нажатие клавиши в поле Потребление

47.procedure TForml.Edit3KeyPress(Sender: TObject; var Key: Char];

48.begin

49.if Key = Char(VK_RETURN)

50.then Buttonl.SetFocus // // сделать активной кнопку Вычислить

51.else If not IsFloat(Key,Edit2.Text) then Key := Chr(O);

52.end;

53.// щелчок на кнопке Вычислить

54.procedure TForml.ButtonlClicklSender: TObject);

55.var

56.rast : real; // расстояние

57.cena : real; // цена

58.potr : real; // потребление на 100 км

59.summ : real; // сумма

60.mes: string;

61.begin

62.rast := StrToFloat(Editl.Text);

63.eena := StrToFloat(Edit2.Text);

64.potr := StrToFloat(Edit3.Text);

65.summ := rast / 100 * potr * cena;

66.if CheckBoxl.Checked then

67.suiim ; = зшпт * 2 ;

68.mes := 'поездка на дачу1;

69.if CheckBoxl.Checked then

70.mes := mes + ' и обратно';

71.mes := mes + 'обойдется в ' + FloatToStrFfsumm,ffGeneral,4,2}

72.+ ' руб.';

73.Label4.Caption := mes;

74.end;

75.end.

 

После добавления имени модуля в список модулей, используемых приложением, сам модуль нужно добавить в проект. Для этого из меню Project надо выбрать команду Add to Project и в открывшемся диалоговом окне — имя файла модуля. В результате добавления модуля к; проекту в окне редактора появится вкладка с текстом добавленного к проекту модуля. 

Увидеть структуру проекта можно в окне Project Manager, которое появляется в результате выбора соответствующей команды из меню View. В качестве примера на рис. 6.3 приведена структура проекта Поездка на дачу.

 

После добавления модуля к проекту и включения его имени в список используемых модулей (инструкция uses) можно выполнить компиляцию программы.

2)

В этом разделе не хватает ссылок на источники информации.

Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете отредактировать эту статью, добавив ссылки на авторитетные источники. Эта отметка установлена 18 октября 2012.

Абстракция 

Абстрагирование — это способ выделить набор значимых характеристик объекта, исключая из рассмотрения незначимые. Соответственно, абстракция — это набор всех таких характеристик.[1]

Инкапсуляция 

Инкапсуляция — это свойство системы, позволяющее объединить данные и методы, работающие с ними в классе, и скрыть детали реализации от пользователя.[1]

Наследование 

Наследование — это свойство системы, позволяющее описать новый класс на основе уже существующего с частично или полностью заимствующейся функциональностью. Класс, от которого производится наследование, называется базовым, родительским или суперклассом. Новый класс — потомком, наследником или производным классом.[1]

Полиморфизм 

Полиморфизм — это свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта.[1]

Класс 

Класс является описываемой на языке терминологии (пространства имён) исходного кода моделью ещё не существующей сущности (объекта). Фактически он описывает устройство объекта, являясь своего рода чертежом. Говорят, что объект — это экземпляр класса. При этом в некоторых исполняющих системах класс также может представляться некоторым объектом при выполнении программы посредством динамической идентификации типа данных. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.

Объект 

Сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса или копирования прототипа (например, после запуска результатов компиляции и связывания исходного кода на выполнение).

Прототип 

Прототип — это объект-образец, по образу и подобию которого создаются другие объекты. Объекты-копии могут сохранять связь с родительским объектом, автоматически наследуя изменения в прототипе; эта особенность определяется в рамках конкретного языка.

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