Форум: "Начинающим";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
ВнизКлассы Найти похожие ветки
← →
Yus (2005-10-27 21:57) [0]Мастера, подскажите как сделать, чтобы класс СoolT передавал число 5 в procedure OnCycle Form1, делаю так :
Unit UnitCoolT;
type
TCycleEvent = procedure(Sender: TObject; NextIndex: Integer) of object;
TCoolT = class(TComponent)
private
FOnCycle: TCycleEvent;
Public
procedure TCoolT.Cycle;
property OnCycle: TCycleEvent read FOnCycle write FOnCycle;
End;
procedure TCoolT.Cycle;
begin
if Assigned(FOnCycle) then FOnCycle(Self, 5);
end;
uses UnitCoolT, …..;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Ind(PosInd:integer);
procedure OnCycle (Sender: TObject; b:integer);
procedure Timer1Timer(Sender: TObject);
private
CoolT: TCoolT;
public
end;
procedure Tform1.OnCycle (Sender: TObject; b:integer);
Как сделать правильно ???
← →
Fay © (2005-10-27 23:14) [1]
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Ind(PosInd:integer);
procedure OnCycle (Sender: TObject; NextIndex: Integer);
procedure Timer1Timer(Sender: TObject);
private
CoolT: TCoolT;
public
end;
З.Ы.
Написать слово "правильно" без "е" - офигенный героизм на этом сайте.
Прямо приятно читать!
← →
DiamondShark © (2005-10-27 23:39) [2]
> Fay © (27.10.05 23:14) [1]
И что дальше?
> Yus (27.10.05 21:57)
> Как сделать правильно ???
Для начала, привести код к виду, пригодному к компиляции.
Потом создать экземпляр TCoolT, его свойству OnCycle присвоить ссылку на Form1.OnCycle, и где-нибудь вызвать метод Cycle.
← →
Fay © (2005-10-28 00:02) [3]2 DiamondShark © (27.10.05 23:39) [2]
Это считается нормальным - сначала спросить "И что дальше?", а потом это "дальше" разжевать?
К тому же мне не ясно, как реализовать "его свойству OnCycle присвоить ссылку на Form1.OnCycle" без [1].
Мне кажется, что автору помешала неправильно объявленная OnCycle, а что с ней делать дальше было известно ещё до того, как класс TCoolT был описан в программе.
← →
Yus (2005-10-28 06:13) [4]Может я неправильно задал вопрос, за что извените?
Как передать событие от одного класса в другой? Использовать абстрактную процедуру не хочется т.к. придется наследовать этот класс. Возможно ли использовать обработку события. Теоретически вроде можно, ведь так работают компоненты, а практически не разу не делал. Подскажите как это сделать. Если можно в примере.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c