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

Процедуры

Структура процедуры аналогична структуре основной программы:

procedure имя [(список параметров)];      { заголовок }

разделы описаний

begin

раздел операторов

end;

БИЛЕТ 7

1)Конструирование модуля для делфи-приложения

Создание модуля

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

Чтобы приступить к созданию модуля, нужно сначала закрыть окно формы и окно модуля формы (в ответ на вопрос о необходимости сохранения модуля следует выбрать No, т. е. модуль, соответствующий закрытой форме, сохранять не надо). Затем из меню File нужно выбрать команду New | Unit. В результате открывается окно редактора кода, в котором находится сформированный Delphi шаблон модуля. Его текст приведен в листинге 6.7.

Листинг 6.7. Шаблон модуля 

1.unit Unitl;

2.interface

3.implementation

4.end.

 

Начинается модуль заголовком — инструкцией unit, в которой указано имя модуля. Во время сохранения модуля это имя будет автоматически заменено на имя, указанное программистом.

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

В раздел implementation (реализация) нужно поместить процедуры и функции, объявленные в разделе interface. В качестве примера в листинге 6.8 приведен модуль программиста, который содержит рассмотренные ранее функции isint и IsFloat.

Листинг 6.8. Модуль программиста

 

01.unit myjunit;

02.interface // объявления процедур и функции,

03.// доступных программам,

04.// использующим этот модуль

05.function Islnt(ch : char) : Boolean;

06.// функция Islnt проверяет, является ли символ

07.// допустимым во время ввода целого числа

08.function IsFloat(ch : char; st: string) : Boolean;

09.// Функция IsFloat проверяет, является ли символ допустимым

10.// во время ввода дробного числа

11.// ей — очередной символ

12.// st — уже введенные символы

13.implementation // реализация

14.// проверяет, является ли символ допустимым

15. 

16.// во время ввода целого числа

17.function Islnt(ch : char] : Boolean;

18.begin

19.if [ch >= ' 0 ' ) and (ch <= ' 9 ' ] // цифры

20.or (ch = #13) // клавиша <enter></enter>

21.or (ch = #8) // клавиша

22.then Islnt := True // символ допустим

23.else Islnt := False; // недопустимый символ

24.end; // проверяет, является ли символ допустимым

25. 

26.// во время ввода дробного числа

27.function IsFloat (ch : char; st -. string) : Boolean;

28.// ch — очередной символ

29.// at — уже введенные символы

30.begin

31.if (ch >= '0') and (ch <= ' 9 ' ) // цифры

32.or (ch = #13) // клавиша <enter></enter>

33.or (ch = #8) // клавиша <bacspace></bacspace>

34.then

35.begin

36.IsFloat := True; // символ верный

37.Exit; // выход из функции

38.end;

39.case ch of

40.'-': if Length(st) = 0 then IsFloat :- True;

41.',': if (Pos(',',st) = 0)

42.and (stfLength(st)] >= ' 0 ' )

43.and (st[Length(st)] <= ' 9 ' )

44.then // разделитель можно ввести только после цифры

45.// и если он еще не введен

46.IsFloat := True;

47.else // остальные символы запрещены

48.IsFloat := False;

49.end;

50.// это раздел инициализации

51.// он а данном случае не содержит инструкция

52.end.

 

Сохраняется модуль обычным образом, т. е. выбором из меню File команды Save, Вместе с тем, для модулей повторно используемых процедур и функций лучше создать отдельную папку, нажав ее, например, Units.

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