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

Вниз

Событие OnTimer   Найти похожие ветки 

 
GrieVeR-13 ©   (2008-07-11 18:53) [0]

type
 TForm1 = class(TForm)
   procedure procOnTimer(Sender: TObject);
<...>
var  
T:TTimer;
<...>
procedure  TForm1.procOnTimer(Sender: TObject);
begin
//inc(i);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if T <> nil then T.Enabled:=false
 else begin
   T:=TTimer.Create(nil);
   T.OnTimer:=procOnTimer;
   T.Interval:=1000;
 end;
 T.Enabled:=true;
<...>

Здравствуйте,возникла такая задачка:
Есть таймер "T", который создается по нажатию кнопки. Надо передать через T.OnTimer:=procOnTimer; переменную i (которая закомментирована) как входной параметр. Это возможно? Просто хотел, чтобы несколько разных таймеров запускали одну процедуру, а в ней потом (в зависимости от значения i) выполнялось определенное действие.


 
Тын-Дын ©   (2008-07-11 19:01) [1]

Передавай нужный параметр/ссылку на него в Self.Tag,в обработчике проверяй в TTimer(Sender).Tag.


 
Johnmen ©   (2008-07-11 19:31) [2]


>  несколько разных таймеров

А в чем фишка?


 
GrieVeR-13 ©   (2008-07-11 19:33) [3]

Тын-Дын
Сразу не подумал об этом, спасибо, заработало=)


 
Игорь Шевченко ©   (2008-07-11 19:36) [4]


> А в чем фишка?


фишка в том, что одна процедура из нескольких таймеров вызывается. Причем таймеры сами создаются по нажатию на кнопку.

Прикинь, не надо писать по своей процедуре для каждого таймера.


 
Johnmen ©   (2008-07-11 19:50) [5]


> Игорь Шевченко ©   (11.07.08 19:36) [4]

Чиста круто :))



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
11-1192680509
homm
2007-10-18 08:08
2008.08.17
GRushControls 0.36


3-1204111803
Ega23
2008-02-27 14:30
2008.08.17
Не получается создать ADO-соединение с сервером


15-1214563536
oldman
2008-06-27 14:45
2008.08.17
Архиватор PAR


3-1203685287
TFieldDefs
2008-02-22 16:01
2008.08.17
AddFieldDef - бага в DB.pas


2-1215754141
Новичек
2008-07-11 09:29
2008.08.17
Посылка сообщения внутри DLL.