Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Вниз

Подскажите с TNotifyEvent   Найти похожие ветки 

 
Геннадий   (2002-10-16 16:14) [0]

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


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

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


 
Opuhshii   (2002-10-16 16:17) [2]

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



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

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


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

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


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

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


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

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


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

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


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

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


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

Zemal © (16.10.02 17:56)


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


Неверно


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

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


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

>Zemal
ButClick( Nil )

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


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

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


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

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

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

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



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

Форум: "Основная";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
1-92611
Cker
2002-10-12 23:58
2002.10.28
А как-бы мне строку, введенную в edit преобразовать в unicode???


4-92781
Melamed
2002-09-13 15:05
2002.10.28
Имя програмного модуля, который создал данное окно


6-92640
matrixxxx
2002-08-26 21:16
2002.10.28
Решился написать небольшой чат. Но принчип работы у него не через


1-92605
I_S_
2002-10-17 12:05
2002.10.28
---|Ветка была без названия|---


14-92736
Abajun
2002-10-09 11:32
2002.10.28
Случайные распределения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский