Здравствуйте, Аноним, Вы писали:
А>Причина проста — в случае, когда функция обратного вызова декларирована как указатель на метод класса,
А>вызвать из него обычную функцию не вызывает большого труда (даже если придётся сделать лишний класс для этого).
А>В противном же случае, когда ф-я обратного вызова декларирована как указатель на обычную ф-ю,
А>а требуется вызвать метод класса, то без серьёзного хака типа MakeObjectInstance такая проблема
А>не решается вообще.
А>Потом, если ты не хочешь создавать объект, ты всегда можешь назначить обработчиком
А>событий классовые методы класса:
А>TDummy = class
А> class procedure EventHandler(Sender: TObject);
А>end;
А>Smth.OnSomeEvent := TDummy.EventHandler;
Вот всем и ответ на изначальный вопрос! И не надо
<b>таких</b>Автор: Leonid Troyanovsky
Дата: 22.11.05
извращений. Впрочем уверены ли вы что обработчиками можно назначать классовые методы? А то не могу сейчас проверить.
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde