Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.22;
Скачать: CL | DM;

Вниз

Присвоение времени.   Найти похожие ветки 

 
Le!   (2003-05-09 07:40) [0]

Почему не работает последняя строчка из этого кода??(естесвенно та которая перед end)

Var TimeNew,TimeOld:TDateTime;
Begin
TimeNew=Time;
If TimeNew=Now then ......
else ....;
TimeOld:=TimeNew;
End;


 
Ученик ©   (2003-05-09 08:46) [1]

Если правильно понял проблему, то видимо не сохраняется TimeOld

{$J+}

const
TimeOld: TDateTime = 0;
Var
TimeNew:TDateTime;
Begin
TimeNew=Time;
If TimeNew=Now then ......
else ....;
TimeOld:=TimeNew;
End;



 
Anatoly Podgoretsky ©   (2003-05-09 09:03) [2]

Она не может не работать или ты что то не договариваешь.


 
feniks   (2003-05-09 10:13) [3]


Now - Date+Time

Запусти процедурку и увидишь разницу.
----------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);

begin
Label1.Caption:=FloatToStr(Time);
Label2.Caption:=FloatToStr(Now);
end;


 
Le!   (2003-05-10 08:17) [4]

Я тогда неправильно код показал нормальный код вот:
Var TimeNew,TimeOld:TDateTime;
Begin
TimeNew:=Time;
If TimeOld=TimeNew then ....
else .....
TimeOld:=TimeNew;
End;
И поблема была в том что когда она присваивала старому времени новое то при обработки этой процедуры снова все время показывала что они не равны даже если время было обынаковым!
что самое интересно если сравнивать вот так:
If TimetoStr(TimeOld)=TimetoStr(TimeNew)
то все работает, а как было нет!!


 
Anatoly Podgoretsky ©   (2003-05-10 10:22) [5]

А и сейчас также показал не верный код, отсутствует заголовок функции, поэтому гадание на кофейной гуще.
Ты еще раз попробуй, может теперь получится.


 
Cobalt ©   (2003-05-10 17:37) [6]

Может, надо сравнивать надо с некоторой погрешностью, а?
Типа, разница меду старым и новым - около 500мс...
Или меньше.
Вы бы еще If DateToStr(TimeOld)=DatetoStr(TimeNew)


 
ads   (2003-05-10 19:42) [7]

к вопросу о ставнении Double-ов...
в примере ниже сообщение никогда не появится....

var D1: Double;
begin
D1:= 1.234;
if D1 = 1.234 then
MessageBox(0, "", "", 0);
end;


 
Verg ©   (2003-05-10 19:55) [8]

Var TimeNew,TimeOld:TDateTime;
Begin
TimeNew:=Time;
If TimeOld=TimeNew then ....
else .....
TimeOld:=TimeNew;
End;


Это ненормальный код: TimeOld хранит неопределенное зеначение.


 
SoftCompService   (2003-05-10 20:53) [9]

Попробуй сравнивать FormatDateTime("Тут формат времени или даты",TimeOld) и храни в String.
Если привести к общему формату, то все получится


 
Vasiliy   (2003-05-10 21:03) [10]

Var TimeNew,TimeOld:TDateTime;
Begin
TimeNew:=Time;
If TimeOld=TimeNew then ....
else .....
TimeOld:=TimeNew;
End;

Во первых TimeOld имеет неопределенное значение
Во вторых, на сколько я понимаю TDateTime кроме времени хранит еще и дату, может быть, при условии что TimeOld всетаки имеет значение, у них даты различаются?


 
ads   (2003-05-11 16:33) [11]

из приведенного выше примера вообще не ясно откуда появится что либо в переменной TimeOld...

>>Var TimeNew,TimeOld:TDateTime;
>>Begin
>>TimeNew:=Time;
>>If TimeOld=TimeNew then ....
>>else .....

насколько я вижу - она неинициализированна.....
что именно хочет автор неясно....


 
icWasya ©   (2003-05-12 09:27) [12]


> ...если сравнивать вот так:
> If TimetoStr(TimeOld)=TimetoStr(TimeNew)
> то все работает, ..!!

в этом случае сравнивается время с точностью до 1 секунды
а если
If TimeOld=TimeNew
сравнивается время с точностью до 0.001 секунды




 
Anatoly Podgoretsky ©   (2003-05-12 09:48) [13]

icWasya © (12.05.03 09:27)

Вот это проясни,

"сравнивается время с точностью до 0.001 секунды"

с чего решил, что до 0.001



Страницы: 1 вся ветка

Текущий архив: 2003.05.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
14-70454
Mirva
2003-05-03 06:03
2003.05.22
Подскажите алгоритм


1-70339
Le!
2003-05-09 07:25
2003.05.22
Как запустить файл с добавками.


1-70223
4you
2003-05-11 14:10
2003.05.22
Оптимизация программы


3-70160
Toshanius
2003-05-02 10:39
2003.05.22
Index is out of date!


14-70463
Skalp
2003-05-03 14:11
2003.05.22
Посоветуйте книгу, либо ссылку