Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.23;
Скачать: CL | DM;

Вниз

Как задать обработчик события во время исполнения?   Найти похожие ветки 

 
Franzy   (2006-07-01 14:18) [0]

Может, я чего-то не понимаю, но мне никак не удается задать обработчик события во время исполнения. Итак, есть некий класс, наследник Timage. Создаю его в обработчике Tform1.create:
myclass:=tmyclass.create(self);
myclass.parent:=form1.

Хочу теперь привязать некий обработчик (который по некоторым причинам нельзя задать при определении класса) к событию, скажем, onclick _данного экземпляра_ этого класса.
Вопрос: как это сделать?


 
DrPass ©   (2006-07-01 14:28) [1]

MyClass.OnClick:=Form1MyClassClick;
что тут может не получиться?


 
Desdechado ©   (2006-07-01 14:34) [2]

Естественно:
1. Метод-обработчик должен быть описан в форме и реализован.
2. Тип его должен совпадать с ожидаемым у обработчика в компоненте.


 
Franzy   (2006-07-01 14:39) [3]

Дело в том, что когда я пишу процедуру типа dosomething(sender:TObject), дельфи ругается, что такие объявления возможны только для классов.


 
Desdechado ©   (2006-07-01 14:50) [4]

Правильно, читай п.1 из [2].
Это должен быть метод формы.


 
Franzy   (2006-07-01 16:18) [5]

А, то бишь название процедуры нужно писать TForm1.dosomething(sender:TObject)?


 
Loginov Dmitry ©   (2006-07-01 16:46) [6]

Можно так еще:

procedure TMyClass.dosomething(sender:TObject);
.......

тогда в TMyClass.OnCreate: MyClass.OnClick := dosomething;


 
Loginov Dmitry ©   (2006-07-01 16:46) [7]

т.е.

OnClick := dosomething;


 
Franzy   (2006-07-01 19:51) [8]

Так и сделал, заработало :)



Страницы: 1 вся ветка

Текущий архив: 2006.07.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
15-1150180363
Мазут Береговой
2006-06-13 10:32
2006.07.23
Американцы не были на Луне... однозначно!


4-1144611125
Eksell
2006-04-09 23:32
2006.07.23
Визуальные эффекты в WinXP


8-1139224538
Sco
2006-02-06 14:15
2006.07.23
Intel Jpeg Library


3-1148038085
DVM
2006-05-19 15:28
2006.07.23
Одна база Access - несколько клиентов


2-1152085498
Новинький
2006-07-05 11:44
2006.07.23
Ребята сравните несколько запросов...