Шаг 143.
Методы обработки сообщений
На этом шаге мы приведем общие сведения по методам обработки сообщений.
Методы обработки сообщений, являются новой разновидностью динамических методов, которая впервые введена в
Object Pascal.
Для объявления методов обработки сообщений используется директива message, которая указывает компилятору, что данный метод является динамическим,
и его смещение в таблице динамических методов определяется именем сообщения, указанным после директивы message.
Приведем пример заголовка метода обработки сообщения.
procedure WMHelp (var Message: THelpMessage) ; message WM_HELP;
Отметим несколько особенностей объявления методов обработки сообщений (МОС):
- в объявлении МОС должна использоваться директива message;
- непосредственно за директивой message должна быть указана целая константа, воспринимаемая как динамический индекс метода;
- МОС могут быть только процедурами;
- МОС имеют только один параметр, который должен быть параметром-переменной;
- имя метода, идентификатор и тип параметра МОС могут быть произвольными;
- МОС не могут иметь директив cdecl, virtual, dynamic, override и abstract;
- для переопределения МОС используется не директива override, a директива message с таким же индексом, как у переопределяемого метода.
На следующем шаге мы рассмотрим абстрактные методы.
Предыдущий шаг
Содержание
Следующий шаг