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

Вниз

Не срабатывает действие....   Найти похожие ветки 

 
Pomestnik   (2005-01-11 22:47) [0]

procedure TForm1.Button1Click(Sender: TObject);
var
D : TDate;
S,F : string;
begin
S := DataModule7.DolgTable.Fields[2].Text;
D := date;
F := DateToStr(D);

if s = f then
ShowMessage( " Должен");

if StrToDate(f) > StrToDate(S) then;
label3.Caption := "ooo";
ShowMessage( "NO Должен");

end;

КОгда совпадает первое условие (s=f ) , тогда сообщение появляется
А вот когда совпадает второе условие(  StrToDate(f) > StrToDate(S)  ) , то сообщение не появляется, зато надпись на лейбле меняется.
Кто - нибудь знает из за чего это может быть?


 
Palladin ©   (2005-01-11 22:50) [1]

грубая ошибка. форматируй нормально код и больше не будешь их допускать

if StrToDate(f) > StrToDate(S) then;


 
Pomestnik   (2005-01-11 23:05) [2]

Не в этом (хотя мой касяк это не заметил!!) дело

if StrToDate(f) > StrToDate(S) then
ShowMessage( " Не отдал ");
label3.Caption := "33333333";

if StrToDate(s) = StrToDate(f) then
ShowMessage(" Должен сегодня отдать ");

ВСё равно только на лэйбл текст выводит(значит условие совпадает)


 
Anatoly Podgoretsky ©   (2005-01-11 23:16) [3]

Нет условие не совпалает, вывод ведется всегда вне зависимости от условия.


 
Palladin ©   (2005-01-11 23:19) [4]

Какое условие?

текст выведет в любом случае, он никаким условием не контролируется. это первое, второе: ты думаешь сравнивая строковое представление дат ты сравниваешь сами даты?


 
Palladin ©   (2005-01-11 23:21) [5]

Второй пункт отменяется. StrToDate был визуально воспринят с точностью до наоборот...


 
Pomestnik   (2005-01-12 11:26) [6]

Тут у меня просто сравниваются дата введнённая в таблице с
"сегодняшней" датой...
Даты же можно сравнивать?


 
Neznaika ©   (2005-01-12 12:48) [7]


> if StrToDate(f) > StrToDate(S) then;
> label3.Caption := "ooo";
> ShowMessage( "NO Должен");


REPLACE

if StrToDate(f) > StrToDate(S) then begin
label3.Caption := "ooo";
ShowMessage( "NO Должен");
end;


 
Anatoly Podgoretsky ©   (2005-01-12 12:50) [8]

Даты можно сравнивать, но ты же сравниваешь не даты, а строки, при том одна из них неизвестна.


 
Neznaika ©   (2005-01-12 12:57) [9]


> Anatoly Podgoretsky ©   (12.01.05 12:50) [8]

По-моему он сравнивает даты => StrToDate(f);
Что там не известно?


 
Anatoly Podgoretsky ©   (2005-01-12 13:10) [10]

Неизвестно это "DataModule7.DolgTable.Fields[2].Text;" кроме того это не дата, а строка.


 
Neznaika ©   (2005-01-12 13:15) [11]


> кроме того это не дата, а строка.


Повторюсь ...

StrToDate(S)
Ж(


 
Anatoly Podgoretsky ©   (2005-01-12 13:24) [12]

А я повторяюсь (нудное выделено
var
D : TDate;
S,F : string;
begin
S := DataModule7.DolgTable.Fields[2].Text;

Так что это не дата, а строка, а вот что в ней и неизвестно.


 
Neznaika ©   (2005-01-12 13:30) [13]

IMHO если StrToDate(S) прошло успешно, значит там дата...?
А сравниваем мы уже после конвертации полученные даты.



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

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

Наверх




Память: 0.5 MB
Время: 0.037 c
14-1105097859
Rule
2005-01-07 14:37
2005.01.23
Внимание, мне нужна срочно помощь за хорошую цену ...


14-1104573126
Меломан
2005-01-01 12:52
2005.01.23
Чтение новостных групп


1-1105475979
vladimir24
2005-01-11 23:39
2005.01.23
работа в Delphi


14-1105010425
Приболевший
2005-01-06 14:20
2005.01.23
что это ?


14-1104864578
AlterEgo of WondeRu
2005-01-04 21:49
2005.01.23
скажите мне чего-нибудь приятное, а то...