![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 18 Всего: 88 |
Christoph, а, ну это нужно когда уведомление (о, например, щелчке мышкой) должен получить не только пользовательский код (например форма), а и дочерний класс. Для этой цели базовай класс вызывает виртуальный метод Click. В реализации этого базового класса этот метод просто вызывает обработчик события (на который ссылается поле процедурного типа). А когда кто-то наследует класс от этого базового класса и тоже хочет как-то реагировать на щелчек - он перекрывает виртуальный метод (Click). В своем перекрытом варианте он делает свою реакцию на нажатие и дальше перед ним встает вопрос, вызывать ли унаследованый метод. Если он хочет чтобы был вызван обработчик, естановленый в OnClick и сделана другая (если есть) работа базового класса, то он вызывает унаследованый метод так
-------------------- Обижено школьников: 8 |
|||
|
||||
| Christoph |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 667 Регистрация: 23.1.2008 Где: Харьков Репутация: 5 Всего: 11 |
Спасибо, я все понял спасибо всем
-------------------- ![]() |
|||
|
||||
| Rasool |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 4.6.2011 Репутация: нет Всего: нет |
Хочу сделать в классе указатель на функцию и инициализировать его ссылкой на функцию. Сделал, как в здесь:
При компиляции выдает ошибку в 36-й строчке: E2009 Incompatible types: 'regular procedure and method pointer' Это сообщение отредактировал(а) Rasool - 16.8.2011, 20:05 |
|||
|
||||
| CodeMonkey |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 29 Всего: 89 |
Читать эту тему с начала. Всё разжёвано.
Christoph понял и вы сможете. Можно ещё почитать это: http://www.gunsmoker.ru/2008/12/static-delphi.html -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
| Rasool |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 4.6.2011 Репутация: нет Всего: нет |
Решил, что мне нужно реализовать указатель на функцию, а не на метод. Спасибо за ссылку.
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |