Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2009, 19:08   #1
soonner
Пользователь
 
Аватар для soonner
 
Регистрация: 14.03.2009
Сообщений: 97
По умолчанию Вывести часа в caption

Хочу вывести часы в caption форму или любого другого обэкта. Кто подскажет как это правильно сделать!
soonner вне форума Ответить с цитированием
Старый 31.03.2009, 19:12   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form1.Caption := TimeToStr(time);
end;
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 31.03.2009, 19:26   #3
Selestis
Форумчанин
 
Аватар для Selestis
 
Регистрация: 21.01.2009
Сообщений: 719
По умолчанию

Что вы подразумеваете под "часами"?
Изобретатель велосипедов
Selestis вне форума Ответить с цитированием
Старый 31.03.2009, 19:32   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Selestis
Что вы подразумеваете под "часами"?
Очевидно (по крайней мере, для меня), системное время.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 31.03.2009, 19:36   #5
Selestis
Форумчанин
 
Аватар для Selestis
 
Регистрация: 21.01.2009
Сообщений: 719
По умолчанию

Извиняюсь, просто мне это было не шибко очевидно.
Изобретатель велосипедов
Selestis вне форума Ответить с цитированием
Старый 31.03.2009, 20:49   #6
soonner
Пользователь
 
Аватар для soonner
 
Регистрация: 14.03.2009
Сообщений: 97
По умолчанию

Цитата:
Сообщение от Sazary Посмотреть сообщение
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form1.Caption := TimeToStr(time);
end;
Большое спасибо, работает!

Да извеняюсь я немного недосформулировал что хочу узнать. Так время есть, а как узнать время работы программы. тоесть что бы выводило сколько времени прошло от запуска проги!

Последний раз редактировалось Stilet; 01.04.2009 в 07:59.
soonner вне форума Ответить с цитированием
Старый 31.03.2009, 21:04   #7
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Ну вот так:
Код:
var t : int64;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form1.Caption := IntToStr(t);
inc(t);
end;
Будет выводить время в секундах.

А вот в нормальном виде:
Код:
var t : int64;
 const
  SecPerDay = 86400;
  SecPerHour = 3600;
  SecPerMinute = 60;

function SecondToTime(const Seconds: Cardinal): Double;
var
  ms, ss, mm, hh, dd: Cardinal;
begin
  dd := Seconds div SecPerDay;
  hh := (Seconds mod SecPerDay) div SecPerHour;
  mm := ((Seconds mod SecPerDay) mod SecPerHour) div SecPerMinute;
  ss := ((Seconds mod SecPerDay) mod SecPerHour) mod SecPerMinute;
  ms := 0;
  Result := dd + EncodeTime(hh, mm, ss, ms);
end;


procedure TForm1.Timer1Timer(Sender: TObject);
begin
inc(t);
Form1.Caption := TimeToStr(SecondToTime(t));
end;
Функцию SecondToTime стянул с Delphi World
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 31.03.2009, 21:04   #8
program123
Подтвердите свой е-майл
 
Регистрация: 12.02.2009
Сообщений: 144
По умолчанию

Код:
var
    time : integer;
...........

procedure TForm1.Timer1Timer(Sender: TObject);
begin
     time := time + 1;
     Label1.Caption := IntToStr(time);
end;
Это время в секундах, думаю как сделать с минутами и часами разберетесь.
program123 вне форума Ответить с цитированием
Старый 31.03.2009, 21:05   #9
Ntlegend
Форумчанин
 
Аватар для Ntlegend
 
Регистрация: 12.05.2007
Сообщений: 373
По умолчанию

Код:
var t:cardinal;
****
t:=GetTickCount;
//выполняем какието действия
Caption := 'Время выполнения: '+IntToStr(GetTickCount-t)+' мс';
Перемен! - требуют наши сердца. Перемен! - требуют наши глаза.
В нашем смехе и в наших слезах, И в пульсации вен:
"Перемен!Мы ждем перемен!"
Ntlegend вне форума Ответить с цитированием
Старый 01.04.2009, 07:56   #10
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

По-моему автору нужно время, а не таймер работы в милисекундах ...
Код:
var
    startTime : TTime;// глобальная переменная
...........

procedure TForm1.FormCreate(Sender: TObject);
begin
   startTime := Now;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
   Form1.Caption := TimeToStr(Now - StartTime);// время работы в виде "00:00:00"
end;
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Microsoft Visual C++ 2005 vs Освой самостоятельно С++ за 24 часа soldm Visual C++ 22 12.11.2008 16:17
Яндекс уже окло часа лежит, сначала подумал инет поломался Alar Свободное общение 6 26.09.2008 12:41
Caption в BitBtn!!! rivers Компоненты Delphi 14 11.08.2008 15:36