![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Добрый День!
Возникла проблема с написанием обработчика события. Код:
Type TNotifyEvent=procedure(Sender:TObject) of object; CBObj=class CB,CB0,CB1: TComboBox; relCB0,relCB1: array[1..2] of integer; res:integer; Constructor Create(j:integer); private CBClick: TNotifyEvent; Protected Procedure DoCBClick(Sender: TObject); dynamic; public property OnCBClick: TNotifyEvent read CBClick write CBClick; Procedure GenerateCBClick(i,j:integer); end; Можно ли назначить объекту CB класса CBObj стандартное событие OnChange, которое выполняется для объекта TComboBox? Последний раз редактировалось Admin, 22.05.2011 в 20:41. |
#2
|
||||
|
||||
![]() Код:
Type TNotifyEvent=procedure(Sender:TObject) of object; CBObj=class private CB,CB0,CB1: TComboBox; relCB0,relCB1: array[1..2] of integer; res:integer; FOnChange: TNotifyEvent; Constructor Create(j:integer); CBClick: TNotifyEvent; procedure DoOnChange(Sender:TObject); Protected Procedure DoCBClick(Sender: TObject); dynamic; public property OnCBClick: TNotifyEvent read CBClick write CBClick; Procedure GenerateCBClick(i,j:integer); property OnChange: TNotifyEvent read FOnChange write FOnChange; end; ....... constructor CBObj.Create(j:integer); begin ... CB.OnChange := DoOnChange; CB0.OnChange := DoOnChange; CB1.OnChange := DoOnChange; end; procedure DoOnChange(Sender:TObject); begin if Assigned(FOnChange) then FOnChange(Self); end; Писал на коленке. Изложил суть. Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#3
|
|||
|
|||
![]() Спасибо, с этим уже разобралась.
А суть была вот в чем: создаю програмным способом 2-мерный массив объектов. Я не знала как присвоить этим объектом событие. Кстати, а можно как-то в событии OnClick узнать на какой конкретно элемент массива нажали мышкой? |
#4
|
||||
|
||||
![]() Для этого существует Sender.
Помогаю за Спасибо ![]() |