Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как сделать счетчик времени [D7, WinXP]


zrv ©   (2004-12-27 14:20:00) 

Вот кусок кода:

var
 AllTime,CurrentTime: TDateTime;
...
....
begin
 CurrentTime:=0;
 AllTime:=0;
 Form1.Timer1.Enabled:=True;
....

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 IncSecond(CurrentTime);
 Form1.Label8.Caption:=TimeToStr(CurrentTime);
 Form1.Label8.Repaint;
 Form1.Label10.Caption:=TimeToStr(AllTime);
 Form1.Label10.Repaint;
end;

По прерыванию таймера раз в секунду хочу увеличить CurrentTime на одну секунду и вывести значение на экран, чтобы показать время работы программы. Но на экран выводиться всегда 0:00:00, те фйнкция IncSecond не работает или я что-то не правильно делаю. Подскажите кто знает.


zrv   (2004-12-27 14:41:00) [1]

Спасибо!!!


Gloomer   (2004-12-27 14:36:00) [2]

procedure TForm1.Timer1Timer(Sender: TObject);
begin
CurrentTime:=IncSecond(CurrentTime);
Form1.Label8.Caption:=TimeToStr(CurrentTime);
Form1.Label8.Repaint;
Form1.Label10.Caption:=TimeToStr(AllTime);
Form1.Label10.Repaint;
end;


zrv   (2004-12-27 14:36:00) [3]

Иначе не успевает прорисовывать.


Neznaika   (2004-12-27 14:30:00) [4]

Попробуй из CurrentTime выдернуть сек. и делать просто inc(x) потом обратно.
И еще, стесняюсь спросить зачем repaint у label?


Наверх

Титульная страница Поиск, карта сайта Написать письмо