![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
|||
|
|||
![]() К сожалению, разброс временных рамок от нескольких часов до двух-трех дней.
|
#17
|
|||
|
|||
![]() значит значения нужно хранить в минутах я так думаю
|
#18
|
|||
|
|||
![]() Да, верно.
|
#19
|
|||
|
|||
![]() а лучше вообще в UnixTime. Сейчас пример выложу
|
#20
|
|||
|
|||
![]() Необходимо, лишь, чтобы при запуске программа считывала последнее сохраненное время, и , после вычисления оставшегося времени, вновь запускала таймер.
|
#21
|
|||
|
|||
![]() программа будет всегда запускать "таймер" при закрытии и как только наступит нужный срок (например третий день работы) - вылетит с окном, шо мол нельзя работать, денег хочу))
|
#22
|
|||
|
|||
![]() Не совсем так, это программа для меня. Она мне должна напомнить о прошедшем времени с момента открытия документа.
|
#23
|
|||
|
|||
![]() Про запуск данной программы в массы думать рановато
![]() |
#24
|
|||
|
|||
![]() Вот что-то типо такова )))
Код:
// в Uses нужно добавить Registry var diff: integer; // глобальная переменная procedure SaveToReg; var Reg: TRegistry; begin Reg := TRegistry.Create; Reg.RootKey := HKEY_CURRENT_USER; Reg.OpenKey('\Software\MyProg\',True); Reg.WriteInteger('DT',DateTimeToUnix(Now)); Reg.Free; end; function ReadFromReg: TDateTime; var Reg: TRegistry; begin Reg := TRegistry.Create; Reg.RootKey := HKEY_CURRENT_USER; Reg.OpenKey('\Software\MyProg\',True); Result := UnixToDateTime(Reg.ReadInteger('DT')); Reg.Free; end; procedure TForm1.FormClose(Sender: TObject); begin if diff = 3 then // например программа отработала 3 минуты SaveToReg; // тут тоже нужна проверка, наступило ли нужное событие по времени, если уже да - то делать SaveToReg, если нет - то не делать end; procedure TForm1.FormCreate(Sender: TObject); begin // SecondsBetween, MinutesBetween, HoursBetween, DaysBetween, WeeksBetween, MonthsBetween, YearsBetween - разные разницы diff := MinutesBetween(Now,ReadFromReg); //diff - тут для примера разница в минутах end; Последний раз редактировалось Assistant, 05.03.2011 в 18:32. |
#25
|
|||
|
|||
![]() Благодарю, сейчас попробую изобразить. А могу ли я рассчитывать на Вашу помощь в дальнейшем, при возникновении вопросов?
|
#26
|
|||
|
|||
![]() ICQ: 593977748
только не сегодня, завтра можно, щас бежать нужно на ДР, вотку пить с пивом )) |
#27
|
|||
|
|||
![]() и с портвейном ))
|