Главная страница
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.012 c
3-65353
free4all
2003-09-29 15:51
2003.10.20
error creating cursor handle ?


1-65489
satron
2003-10-08 16:21
2003.10.20
Французский шрифт в Edit и RichEdit


7-65660
AlexRush
2003-08-04 15:24
2003.10.20
NTFS ADS (Alternative Data Streams) - поиск


1-65467
DimChan
2003-10-09 09:13
2003.10.20
Ввод числа денежного эквивалента


3-65317
Vick
2003-09-30 13:21
2003.10.20
Программа в процессе работы пожирает всю память!!!!