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

Вниз

Run-time   Найти похожие ветки 

 
chs2r ©   (2003-10-06 17:43) [0]

Как пишется обработчик создаваемых в Run-time компонент?
Я сделал PageControl , на нем динамически формируется куча закладок-страниц, на каждой есть еще кнопки , таблицы и тд
Как мне назначить обработчик их событий? (Вся эта лабуда в динамических массивах)
Читал статью жизнь и смерть в Run-time не понял этот момент...
Выдает ошибку несовместимость метода и процедурного типа
Дайте плз пример


 
Song ©   (2003-10-06 17:45) [1]

With TTabSheet.Create(Self) Do
Begin
PageControl:=PageControl1;
onСобытие:=обработчик;
...
End;


 
Переяслов Григорий ©   (2003-10-06 17:46) [2]

Создаешь процедуры - обработчики и затем присваиваишь их событиям компонентов

Button1.OnClick := ButtonOnClick;

procedure ButtononClick(...
begin
...
end;


 
PVOzerski ©   (2003-10-06 17:51) [3]

>Выдает ошибку несовместимость метода и процедурного типа
IMHO, назначаемый обработчик либо не совпадает по параметрам, либо не является методом класса.


 
Petr V. Abramov ©   (2003-10-06 19:14) [4]

Обработчик обязан быть методом какого-нибудь объекта, а не просто процедурой


 
KSergey ©   (2003-10-07 08:10) [5]

http://www.delphikingdom.com/helloworld/runtime_comp.htm


 
chs2r ©   (2003-10-08 12:46) [6]

как мне с этим бороться?

я хочу сделать обработчик OnMouseDown
пишу:

procedure MDown(...);
...

TbSheet[i]:=TTabSheet.Create(nil);
...
TbSheet[i].OnMouseDown:=MDown;
как сделать правильно? объявить MDown: TMouseEvent; ? как тогда в теле ее свой код написать?


 
MBo ©   (2003-10-08 14:02) [7]

>chs2r
Перечитать [3],[4] и [5]


 
chs2r ©   (2003-10-08 14:13) [8]

>Обработчик обязан быть методом какого-нибудь объекта, а не просто процедурой
>IMHO, назначаемый обработчик либо не совпадает по параметрам, либо не является методом класса

как это реализовывается?


 
Raduga   (2003-10-08 14:13) [9]

>объявить MDown: TMouseEvent;
попробуй так:
MDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);


 
Raduga   (2003-10-08 14:15) [10]

Причем MDown объяви как метод главной формы (допустим)


 
chs2r ©   (2003-10-08 14:54) [11]

попробую объявить как метод главной формы...другое пока ничего не получается


 
Raduga   (2003-10-08 15:28) [12]

Не забудь реализовать сам метод MDown


 
chs2r ©   (2003-10-08 16:49) [13]


> Raduga

спасибо за помощь, все работает :)



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

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

Наверх




Память: 0.49 MB
Время: 0.018 c
1-65508
Raduga
2003-10-09 12:56
2003.10.20
Свойство типа TComponent


1-65528
Кодер
2003-10-08 09:52
2003.10.20
Свойство Enable в TRadioGroup


1-65492
webpauk
2003-10-07 15:18
2003.10.20
отображение свойств компонента


1-65431
romeo
2003-10-07 17:38
2003.10.20
Можно ли получить значение свойства по его имени?


1-65452
TUser
2003-10-09 10:10
2003.10.20
WebBr