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

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

Помогите народ плиззз!!!! [D5]


АЛЕКСЕЙ СЕРГЕЕВИЧ ©   (2002-11-03 12:18:00) 

Привет мастера помогите решить прогблему!!!
Короче проблема такая : Мне надо чтоб время шло назад 2:04:02
2:04:01 2:03:59 2:03:58 и.т.п
Прошу кто может напишите кусок кода плиззззззззззз


sask   (2002-11-04 14:46:00) [1]


> в итоге время пойдёт назад со скоростью выполнения операций,
> которые находятся между первым и вторым вызовом ф-ции time


Может прежде, чем что-то критиковать, стоит попробовать у себя запустить сей кусочек кода и посмотреть как это будет выглядеть?


Anatoly Podgoretsky   (2002-11-04 14:42:00) [2]

Пускай так, но это не решает его задачи, при том тут какой то рандом получается, если запускать в час, в два часа, в 10 часов

1*2-Time
2*2-Time
10*2-Time

Особенно интересен вариант в 0 часов


Сатир   (2002-11-04 14:35:00) [3]

>так как t1:=Time
очень в этом сомниваюсь, поскольку

t1 := Time();
while True do
begin
Label1.Caption := TimeToStr(t1 - (Time() - t1));

между первым и вторым вызовом ф-ции происходит несколько милисек, которые и вносят различия между t1 и time
то есть, если t1 = time- dt, то
t1-(time-t1) = time-dt-time+time-dt = time - 2*dt
в итоге время пойдёт назад со скоростью выполнения операций, которые находятся между первым и вторым вызовом ф-ции time


sask   (2002-11-04 06:42:00) [4]

>>2 Ihor Osov"yak © (03.11.02 20:40)
>>2 Hirara © (03.11.02 18:24)

скобки я ставлю, чтобы отличать функцию от
переменной - вот и все (а может и действительно Си сказывается)

>>2 ALL
я всего лишь предложил человеку алгоритм решения (который работает) - как его использовать - дело хозяйское...


Anatoly Podgoretsky   (2002-11-03 20:55:00) [5]

Сатир © (03.11.02 20:29)
Если раскрыть скобки то time-time+time, так как t1:=Time
Недостаточно начальных данных, но допустим, что от 2:04:02

T1 := Time + StrToTime("2:04:02");

в обработчик OnTimer

begin
Label1.Caption := TimeToStr(T1 - Time);
end;




Ihor Osov'yak   (2002-11-03 20:40:00) [6]

2 Hirara © (03.11.02 18:24)

Дык человек вчера может со си только спрыгнул, или мечется туда-сюда (ну почти как я, красивый). На уровне рефлекса у сишников скобки после вызова функии/процедуры ставить ...


TTCustomDelphiMaster   (2002-11-03 20:39:00) [7]

Все правильно товарищи! Что вы кипятитесь?


Геннадий   (2002-11-03 20:38:00) [8]

А может разместить на форме таймер и в его событии OnTimer (при интервале 1 сек [Interval = 1000]) написать Dec(DateTimePicker1.Time). Ну или DateTimePicker1.Time:= DateTimePicker1.Time - 1. Или минус StrToTime("00:00:01")


Сатир   (2002-11-03 20:29:00) [9]

если раскрыть скобки, то получится t1 - time + t1 = 2*t1 -time, но таков ли верный ответ?


Anatoly Podgoretsky   (2002-11-03 20:19:00) [10]

плохо ты в школе учился t1-t1=0 остается -Time


Paul 'Spawn' Rysevets   (2002-11-03 20:12:00) [11]

to Anatoly Podgoretsky:
если из математики, то получается, что от начального времени t1 отнимается прошешее (Time() - t1).
Математика!!!!


Anatoly Podgoretsky   (2002-11-03 18:41:00) [12]

Hirara © (03.11.02 18:24)

А мне интересно зачем это

Label1.Caption := TimeToStr( t1- (Time() - t1));


Юрий Зотов   (2002-11-03 18:34:00) [13]

Я бы тоже хотел запустить время назад. Помолодеть лет так на 20-25. Никто не поможет? Можно даже и со скобками...


Hirara   (2002-11-03 18:24:00) [14]

sask
мне вот интересно, зачем скобки после Time указываеш? т без них все пашет


sask   (2002-11-03 12:48:00) [15]

procedure TForm1.Button1Click(Sender: TObject);
var t1: TTime;
begin
t1 := Time();
while True do
begin
Label1.Caption := TimeToStr(t1 - (Time() - t1));
Application.ProcessMessages;
Sleep(1000);
end;
end;


Наверх

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