Вставьте инструкции в событие компонента - PullRequest
1 голос
/ 28 февраля 2012

Я хочу расширить функциональность TTimer, добавив опцию, сколько раз может работать таймер.

Моя проблема в том, что мне нужно сделать это внутри события OnTimer (). Есть ли способ переопределить это событие, сохранив его оригинальную функциональность?

1 Ответ

5 голосов
/ 28 февраля 2012

Большинство хороших компонентов имеют защищенный виртуальный или динамический метод, который не вызывает ничего, кроме вызова соответствующего события. Таким образом, потомки могут вставлять свой собственный связанный с событием код, оставляя фактическое событие доступным для конечного пользователя компонента, когда он помещается в форму.

В случае TTimer метод, вызывающий событие OnTimer, имеет вид Timer. Создайте потомка TTimer и переопределите этот метод. Проверьте, сколько раз вы уже вызывали функцию, и, если вы все еще ниже предела, вызовите inherited.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...