![]() |
|
|
|
|
#1
|
|||
|
|||
|
Здрасте, пишу программу для выключения компа по таймеру,
написал функцию которая выщитывает оставшееся время до выключения. Сталкнулся с такой проблемой: Когда я передаю функции строчку Label1.Caption:=Ostatok('13:26:10', '13:35:15'); то она всё нормально выщитывает, но когда беру значения из переменной Label1.Caption:=Ostatok(Time, Time); вылазит ошибка "is not a valid integer value" Переменная типа String, нет вней не лишних пробелов, нелишних символов. Объясните нубу почему возникает эта ошибка??? |
|
#2
|
|||
|
|||
|
дай код всей процедуры
|
|
#3
|
|||
|
|||
|
Код:
function Ostatoc(Ttime:string; Timer:string):String;
var dd,mm,yy,S:integer; dd1,mm1,yy1,S1:Integer;
begin
Dd:=StrToInt(Copy(Ttime,1,pos(':',Ttime)-1));
if (length(Ttime))=7 then
S:=2
else S:=3;
Mm:=StrToInt(Copy(Ttime,pos(':',Ttime)+1,S-2));
yy:=StrToInt(Copy(Ttime,S+4,length(Ttime)));
Dd1:=StrToInt(Copy(Timer,1,pos(':',Timer)-1));
if length(Timer)=7 then
S1:=2
else S1:=3;
Mm1:=StrToInt(Copy(Timer,pos(':',Timer)+1,S1-2));
yy1:=StrToInt(Copy(Timer,S1+4,length(Timer)));
Result:='осталось: '+IntToStr(dd1-dd)+' час. '+IntToStr(mm1-mm)+' мин. '+IntToStr(yy-yy1)+' сек.';
end;Последний раз редактировалось Admin, 19.04.2011 в 09:50. |
|
#4
|
||||
|
||||
|
Так работает нормально, ошибок не выдаёт но вряд ли правильно считает к.т у меня минуты и сек с минусом получались.
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:= Ostatoc('12:11:10','13:12:15');
end; |
|
#5
|
||||
|
||||
|
реализация 1:
Код:
function DiffTime(ANow: String; ATime: String): String; begin Result:=TimeToStr(StrToDateTime(ATime)-StrToDateTime(ANow)); end; Код:
function DiffTime(ANow: String; ATime: String): String;
var
diff: TDateTime;
h, m, s, ms: Word;
begin
diff:=StrToDateTime(ATime)-StrToDateTime(ANow);
DecodeTime(diff, h, m, s, ms);
Result:=Format('%.2d час. %.2d мин. %.2d сек.', [h, m, s]);
end;Код:
begin Edit1.Text:=DiffTime(DateTimeToStr(Time), '12:00'); Edit2.Text:=DiffTime(DateTimeToStr(Time), DateTimeToStr(Time)); end; |
|
#6
|
|||
|
|||
|
Вроде разобрался, всем спасибо!
|