Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.12.2011, 17:21
05_Lezgi_05 05_Lezgi_05 вне форума
Прохожий
 
Регистрация: 16.12.2011
Адрес: Каспийск
Сообщения: 10
Репутация: 10
Вопрос Help

Помогите пожалуйста. Хочу написать прогу которая будет определять сколько времени осталось до завтрака, обеда и ужина. Причем чтобы время завтрака, обеда и ужина каждый день было разным помогите кто может, а то у меня скоро голова лопнет
Ответить с цитированием
  #2  
Старый 16.12.2011, 17:45
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Вот так реализуются часы:
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Label1.Caption:= TimeToStr(Now); // размер Label (свойство Font) увеличить
end;
Вам нужен таймер (обратный отсчёт). Т.е. от времени завтрака отнимайте Now().
Ответить с цитированием
  #3  
Старый 17.12.2011, 16:22
05_Lezgi_05 05_Lezgi_05 вне форума
Прохожий
 
Регистрация: 16.12.2011
Адрес: Каспийск
Сообщения: 10
Репутация: 10
По умолчанию

а как отнимать? у меня не получается
Ответить с цитированием
  #4  
Старый 17.12.2011, 17:04
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Цитата:
Сообщение от 05_Lezgi_05
а как отнимать? у меня не получается
Отнимать через минус. Киньте на форму элемент TDateTimePicker, переведите его в режим "время" (Kind = dtkTime) и берите из него время завтрака.
Ответить с цитированием
  #5  
Старый 17.12.2011, 17:10
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

Для времени обьявляешь переменную типа TDateTime
Код:
var Mrm,dMrm:TDateTime;//Mrm - время завтрака, dMrm-сколько осталось до завтрака
begin
Mrm:=EncodeTime(8,31,0,0);//часы, минуты, сек., мс.
dMrm:=Mrm-Now;
label1.caption:=TimeToStr(dMrm);
end;
но только если время завтрака еще впереди и в пределах 1 дня, иначе отсчет будет неверным (не обратным)

или можешь использовать ф-цию DecodeTime(Now, часы, минуты, сек., мс), и потом отнимать по-отдельности часи, минути и секунды времени завтрака от результатов этой функции(процедуры)

Последний раз редактировалось YVitaliy, 17.12.2011 в 17:17.
Ответить с цитированием
  #6  
Старый 17.12.2011, 17:48
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Для вывода можно ещё использовать разные форматы через функцию FormatDateTime, напр.:
Код:
StaticText1.Caption:= FormatDateTime('t', Time);
Ответить с цитированием
  #7  
Старый 17.12.2011, 19:07
05_Lezgi_05 05_Lezgi_05 вне форума
Прохожий
 
Регистрация: 16.12.2011
Адрес: Каспийск
Сообщения: 10
Репутация: 10
По умолчанию

Вы знаете что такое рузнама?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:47.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025