Ещё одна функция, которая может быть полезной. Например, при отображении длительности аудио- или видеофайла.
Привожу код лишь по той причине, что в глобальной сети можно найти много вариантов реализации подобной функции, но в большинстве случаев код ужасен :( У GunSmoker'а хорошо про это написано.
А функция на самом деле проста - её реализация помещается в одну строку.
Delphi версия:
function FormatDuration(Seconds: Integer): string; begin Result := Format('%d:%.2d:%.2d', [Seconds div 3600, (Seconds div 60) mod 60, Seconds mod 60]); end;
Пример использования:
FormatDuration(666); //0:11:06 FormatDuration(6666); //1:51:06 FormatDuration(66666); //18:31:06 FormatDuration(666666); //185:11:06
Oracle версия:
function format_duration(seconds_ in integer) return varchar2 is begin if seconds_ is null then return null; else return to_char(trunc(seconds_ / 3600))||':'|| to_char(trunc(seconds_ / 60) mod 60, 'FM00')||':'|| to_char(seconds_ mod 60, 'FM00'); end if; end;
Пример использования:
select format_duration(666) from dual -- 0:11:06 select format_duration(6666) from dual -- 1:51:06 select format_duration(66666) from dual -- 18:31:06 select format_duration(666666) from dual -- 185:11:06
3 коммент.:
Николай, здравствуте, пожалуста создайте на своем сайте Топик для начинающих по Delphi, читал Ваши статьи и хочется на Вашем сайте поучиться как это делать, понимаю что мне до этого очень далеко, но хотя бы на простеньких примерах. я тока начинаю заниматься Delphi - Вопрос тут вот в чем, ни как ни могу сам применить при составлении программки компоненты Delphi - в книжке вроде все понятно что пишут, а сам составить еще не могу - в книжках мало примеров по каждому компоненту Delphi - пожалуста, очень прошу рассказать в топике для начинающих по Delphi про каждый компонент с примером по отдельности, тока по отдельности, может получиться потом мне самому на этих примерах - компонентах составить первую программку, заранее извиняюсь, если что, но почитал Ваши статьи, и надеюсь, на этом сайте поймут и помогут с примерами по каждому компоненту. Спасибо. Буду очень ждать Вашего ответа и Топик для начинающих по Delphi.
2 Анонимный
Простите, но это не сайт, это блог - бесплатный сервис Google, который я использую с целью публикации своих мыслей и заметок. При этом от показа рекламы я за полтора года заработал всего полтора доллара, что даже не окупает доменное имя delphinotes.ru :с)
Доступной (в т.ч. и бесплатной) информации о программировании (в т.ч. и на Delphi) для начинающих настолько много, что я просто не намереваюсь писать свою книгу (трата времени, которая не будет окуплена ну никак).
Прежде чем дать Вам совет, задам Вам вопрос: с чего вы начинаете изучение иностранного языка?
Ответ: с алфавита.
Пока Вы не выучите алфавит языка, Вы не сможете читать (и, главное, писать!) слова, предложения, абзацы, статьи.
Тоже и в программировании. Шаг за шагом. Ключевые слова и конструкции. Типы данных: простые, перечисляемые, сложные, указатели (пока не поняли как оно работает - делать шаг вперёд чревато разочарованиями)... Процедурное программирование. Это ещё не Delphi, это ещё Pascal. Затем ООП - хотя бы понимание как оно работает и зачем оно нужно. И только уже потом Delphi - визуальная среда, компоненты, механизмы обработки и перехвата ошибок (исключений)... А потом уже можно и попробовать и работу с COM (DirectX, например), с базами данных...
Главное - стремление, усидчивость и работа (над собой, с примерами, задачами, воображением, творчеством).
Насчёт книг - их не обязательно должно быть много, достаточно даже одной, главное чтобы это была хорошая книга. Например: Д. Осипов "Delphi. Професиональное программирование". В книге порядка 1000 страниц, для начала Вам хватит первых двухсот - изучите (и практикуйте) досконально.
А если у Вас возникают конкретные вопросы - для этого существует большое количество русскоязычных форумов. Пройдитесь по ним, вот список:
http://www.gunsmoker.ru/p/delphi.html#forumsrus
А ещё почитайте, не поленитесь, найдите время, статьи, собранные здесь:
http://www.gunsmoker.ru/p/blog-page_13.html
(Только не надо всё читать в один присест - две-три статьи в неделю - самое то.)
Искренне желаю Вам успехов! :с)
P.S.: другие комментарии с подобной просьбой я удалил.
Отправить комментарий