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

Вниз

Перевод из строки в TDateTime   Найти похожие ветки 

 
Strate ©   (2007-08-07 15:08) [0]

Здравствуйте.

Воожу в текстовое поле время в формате mm:ss.zzz . Как корректно без ошибок перевести строку в тип дата-время?


 
{RASkov} ©   (2007-08-07 15:10) [1]

> [0] Strate ©   (07.08.07 15:08)

StrToDateTime()
+ FormatSettings


 
Strate ©   (2007-08-07 15:17) [2]


> {RASkov} ©   (07.08.07 15:10) [1]


А можно уточнить как заполнить FormatSettings именно для случая с zzz?


 
{RASkov} ©   (2007-08-07 15:27) [3]

> [2] Strate ©   (07.08.07 15:17)

Так и заполняй
FormatSettings.LongTimeFormat:="mm:ss.zzz";


 
Strate ©   (2007-08-07 15:38) [4]

Написал именно так, ошибка "12:12.121 is not valid time". Естественно цифры для примера взял. Вот не пойму как правильно оформить.


 
{RASkov} ©   (2007-08-07 16:46) [5]

> [4] Strate ©   (07.08.07 15:38)

Может кто и умнее что придумает, но попробуй так:

В Edit1.Text - "25:55.625"

procedure TForm1.Button1Click(Sender: TObject);
var D: TTime; N, L: Integer; H, M, S, Ms: Word; SMs: String; Fs: TFormatSettings;
begin
 N:=LastDelimiter(".", Edit1.Text)-1;
 L:=Length(Edit1.Text)-N;
 SMs:=Copy(Edit1.Text, N+2, L);
 D:=StrToTime("00:"+Copy(Edit1.Text, 1, N));
 GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, Fs);
 Fs.LongTimeFormat:="nn:ss.zzz";
 ShowMessage(TimeToStr(D, Fs));
 DecodeTime(D, H, M, S, Ms);
 D:=EncodeTime(H, M, S, StrToIntDef(Sms, 0));
 ShowMessage(TimeToStr(D, Fs));
end;

В общем как-то не больно мне это нравиться :)
А зачем вообще нужно вводить миллисекунды?


 
Strate ©   (2007-08-07 16:57) [6]

Спасибо, попробуем. А надо это для построения таблицы рекордов спортсменов. Вот.



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
8-1164713466
Tar I
2006-11-28 14:31
2007.09.02
Вывод графики поверх видео


15-1186050402
TStas
2007-08-02 14:26
2007.09.02
Есть у кого-нибудь TNMHTTP?


2-1186323790
JetAPI
2007-08-05 18:23
2007.09.02
TButton: Как одно событие, согласовать с другим событием?


15-1186115317
Alarm
2007-08-03 08:28
2007.09.02
С днем рождения Yakudza


2-1186669962
\/iKTOR
2007-08-09 18:32
2007.09.02
Компонент и объект...