Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подскажите с TNotifyEvent [D6, WinME]


Геннадий ©   (2002-10-16 16:14:00) 

Создаю динамический объекть. Скажем, TButton. Есть моя процедура, скажем, ButClick. Как сделать так, что бы она была обработчиком события OnClick для созданного TButton?


Геннадий   (2002-10-16 21:31:00) [1]

Всем спасибо. Получилось. Только хочу заметить:

> Почитайте литературу, сударь. Вам явно нехватает знаний, а их можно почерпнуть в литературе и FAQ.

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


Zemal   (2002-10-16 18:33:00) [2]

О! Точно! Спасибо! Пора меня к литературе отрпавлять! Спасибо за вскрытие пробела! Пойду домой читать! :)


MBo   (2002-10-16 18:21:00) [3]

>Zemal
ButClick( Nil )

Методом класса должна быть по соображениям совместимости типов -
обработчик - procedure() of object


Zemal   (2002-10-16 18:19:00) [4]

>>Игорь Шевченко
В чём неверно?


Игорь Шевченко   (2002-10-16 18:08:00) [5]

Zemal © (16.10.02 17:56)


> Да! Процедура должна быть объявлена: procedure ButClick(Sender
> : TObject);
> Т.к. ей передаётся ссылка на вызывающий объект, а чтобы
> такую ссылку получить, она естественно должна быть МЕТОДОМ
> ОБЪЕКТА!


Неверно


Zemal   (2002-10-16 18:02:00) [6]

Вообще она может быть объявлена и как метод класса, но небудем вдаваться в подробности :).


Zemal   (2002-10-16 17:56:00) [7]

Да! Процедура должна быть объявлена: procedure ButClick(Sender : TObject);
Т.к. ей передаётся ссылка на вызывающий объект, а чтобы такую ссылку получить, она естественно должна быть МЕТОДОМ ОБЪЕКТА!


Zemal   (2002-10-16 17:50:00) [8]

Опять же вопрос, который в любой книге по Делфи пишут в самой первой главе: "Событие приложения не что иное, как ссылка на метод-обработчик, т.е. ссылка на процедуру и функцию, которую в любой момент выполнения программы можно переопределить."
Например: Application.OnTerminate := MyActionOnTerminate;
Почитайте литературу, сударь. Вам явно нехватает знаний, а их можно почерпнуть в литературе и FAQ.


MBo   (2002-10-16 17:50:00) [9]

процедура должна быть МЕТОДОМ ОБЪЕКТА!!!


Андрей Прокофьев   (2002-10-16 17:47:00) [10]

Процедура должна быть объявлена
procedure ButClick(Sender : TObject);


Геннадий   (2002-10-16 17:45:00) [11]

Ага, как же! Он пишет о несовместимости типов!


Opuhshii   (2002-10-16 16:17:00) [12]

MyObject:=TButton.Create(nil);
MyObject.OnClick:=ButClick;


Игорь Шевченко   (2002-10-16 16:16:00) [13]

MyButton := TButton.Create(Self)
....
MyButton.OnClick := ButClick


Наверх

Титульная страница Поиск, карта сайта Написать письмо