Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Таймер


Автор: Михалыч 6.7.2008, 12:59
Поставил в таймер вот такой код,а в Label отображается цыфра 59,то есть один раз сработал и встал


Код

procedure TForm1.Timer7Timer(Sender: TObject);
var
xx:Integer;
begin
xx:=60;
xx:=xx-1;

Form1.Label25.Caption:=IntToStr(xx);


end;

end.

Автор: VICTAR 6.7.2008, 13:12
Никто никуда не встал. Каждый раз ты переменной xx присваиваешь значение 60. Какого эффекта ты ждал?

Добавлено через 1 минуту и 10 секунд
Если тебе нужен отсчет, то сделай переменную хх глобальной и вынеси ее инициализацию за пределы Timer7Timer, например в OnCreate

Автор: Михалыч 6.7.2008, 13:25
Спасибо

Автор: THandle 7.7.2008, 05:22
Тут не обязательно объявлять глобальную переменную. Можно и так:

Код


procedure TForm1.Timer1Timer(Sender: TObject);
{$J+}
const
  xx : integer = 60;
{$J-}
begin
  Label1.Caption := IntToStr(xx);
  Dec(xx);
end;

Автор: VICTAR 7.7.2008, 10:08
Цитата(THandle @  7.7.2008,  05:22 Найти цитируемый пост)
Можно и так:

Можно, но не нужно. 
Не надо лезть в дебри, если не знаешь основ  smile 

Автор: THandle 8.7.2008, 05:01
Цитата(VICTAR @  7.7.2008,  11:08 Найти цитируемый пост)

Можно, но не нужно. 
Не надо лезть в дебри, если не знаешь основ


Тут я согласен. Просто показал как еще можно. smile 

Кстати, а зачем так вот:

Цитата(VICTAR @  6.7.2008,  14:12 Найти цитируемый пост)

Если тебе нужен отсчет, то сделай переменную хх глобальной и вынеси ее инициализацию за пределы Timer7Timer, например в OnCreate 


?

Мне всегда казалось что глобальные переменные можно инициализировать "не отходя от кассы", то есть при объявлении.

так вот :
Код


var
  xx : integer = 60;

Автор: VICTAR 8.7.2008, 12:36
Цитата(THandle @  8.7.2008,  05:01 Найти цитируемый пост)
можно инициализировать

никто не спорит. 
ключевое слово в моем топике 
Цитата(VICTAR @  6.7.2008,  13:12 Найти цитируемый пост)
например



THandle,  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)