Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Упростить конструкцию   Найти похожие ветки 

 
нехочу называться   (2005-06-08 22:15) [0]

Помогите упростить конструкцию:

 mp:=mediaplayer1.Position;
 hi:=Trunc(mp/25/60/60);
 mi:=Trunc(mp/25/60-(hi*60));
 si:=Trunc(mp/25-(mi*60));
 h:=IntToStr(hi);
 m:=IntToStr(mi);
 s:=IntToStr(si);
 if Length(h)=1 then h:="0"+h;
 if Length(m)=1 then m:="0"+m;
 if Length(s)=1 then s:="0"+s;
 Label1.Caption:=h+":"+m+":"+s;


 
Alx2 ©   (2005-06-08 22:20) [1]

Да вроде и так просто.

Разве что чуток короче будет так:

Label1.Caption:=TimeToStr(mediaplayer1.Position/2160000);


 
нехочу называться   (2005-06-08 22:21) [2]

=)

Спасибо.


 
Alx2 ©   (2005-06-08 22:24) [3]

Заработало хоть? (самому интересно :) )


 
нехочу называться   (2005-06-08 22:31) [4]

Как ни странно =)
С первого раза скомпилировалось и работает как надо.


 
Virgo_Style ©   (2005-06-08 22:47) [5]

нехочу называться   (08.06.05 22:31) [4]

Кажется, Position может выдаваться в кадрах или миллисекундах в зависимости от не помню чего. Так было бы надежнее - возможно, где-то будет не 25 кадров в секунду...


 
Юрий Зотов ©   (2005-06-09 00:03) [6]

> Помогите упростить конструкцию:

Ставим TimeFormat=tfHMS. Если верить справке, то после этого никакие вспомогательные переменные не нужны, а весь приведенный код заменяется одним оператором:

with MediaPlayer1 do
 Label1.Caption := Format("%2.2d:%2.2d:%2.2d",
   [Position and $FF, Position and $FF00 shr 8, Position and $FF0000 shr 16]);


 
нехочу называться   (2005-06-09 00:31) [7]

Юрий Зотов ©   (09.06.05 00:03) [6]
Или справка врет или одно из двух. Но Ваш вариант показывает:
00:00:00 = a:b:c
где а постоянно увеличивается со скоростью кадров в сек. до 250, а потом увеичивается b на 1 и снова а. b до 20 я подождал, потом надоело =)


 
Юрий Зотов ©   (2005-06-09 02:32) [8]

> нехочу называться   (09.06.05 00:31) [7]

Идея кода обязана работать - она настолько элементарна, что не работать буквально не может. Нужно просто повнимательнее посмотреть справку по TimeFormat и внести поправки. Вероятнее всего, нужно использовать другое значение TimeFormat.



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

Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.074 c
1-1117719711
Roman_Vladivostok
2005-06-02 17:41
2005.06.29
Как перейти в Memo на первую строчку?


1-1118234991
Just3r~
2005-06-08 16:49
2005.06.29
Переход на новую версию


1-1118309239
Nad89
2005-06-09 13:27
2005.06.29
Удаление динамического компонента


1-1117668334
iskatel
2005-06-02 03:25
2005.06.29
resume.xlw млин...


10-1094808578
Kusto
2004-09-10 13:29
2005.06.29
Как вернуть список строк?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский