Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2009, 12:40   #1
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
Вопрос Время прописью (из Java Script в Delphi)

Привет Всем!
Я тут недавно нашел java script, который показывает время прописью. Я в HTML = 0...
Но код был понятный и я его преобразовал в Delphi код...

Получилось не плохо, но есть один баг.
н/п: 13:50, то будет писать "Примерно через десять минут будет час",
а должно быть "Примерно через десять минут будет два часа"... как прибавить час в мой код...

В архиве есть и HTML, там показано как правильно...
Скачайте и помоги плиз (кому не трудно)...
Вложения
Тип файла: rar Script Text Clock.rar (168.5 Кб, 18 просмотров)
ZuBy вне форума Ответить с цитированием
Старый 18.04.2009, 13:55   #2
Juggernaut
Пользователь
 
Регистрация: 18.04.2009
Сообщений: 55
По умолчанию

1. У тебя там они только на 12 часов (с полудня до полуночи)
2. Вообще корявенькие...

Я тебе их починил, теперь все нормально работает.
Вложения
Тип файла: zip clock.zip (199.0 Кб, 14 просмотров)
Весы слева, не забыли?

Абсурдопедия
Juggernaut вне форума Ответить с цитированием
Старый 18.04.2009, 19:08   #3
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

>> Juggernaut конечно это я бы и сделал сам спс, но Вы так и не исправили баг.
ZuBy вне форума Ответить с цитированием
Старый 18.04.2009, 19:11   #4
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Самое главное исправить баг (кто сможет), а остальное я сам пределаю...
Потом выложу готовый проект и естественно исходник
ZuBy вне форума Ответить с цитированием
Старый 18.04.2009, 21:06   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

тестируйте код:
Код:
function TimeToStr(hh, mm: integer): string;
var
  h : string;
begin
  if mm>30 then hh := hh + 1;
  if hh = 24 then  h := 'полночь';
  if hh = 1 then  h := 'один час';
  if hh = 2 then  h := 'два часа';
  if hh = 3 then  h := 'три часа';
  if hh = 4 then  h := 'четыре часа';
  if hh = 5 then  h := 'пять часов';
  if hh = 6 then  h := 'шесть часов';
  if hh = 7 then  h := 'семь часов';
  if hh = 8 then  h := 'восемь часов';
  if hh = 9 then  h := 'девять часов';
  if hh = 10 then  h := 'десять часов';
  if hh = 11 then  h := 'одиннадцать часов';
  if hh = 12 then  h := 'двенадцать часов';
  if hh = 13 then  h := 'один час';
  if hh = 14 then  h := 'два часа';
  if hh = 15 then  h := 'три часа';
  if hh = 16 then  h := 'четыре часа';
  if hh = 17 then  h := 'пять часов';
  if hh = 18 then  h := 'шесть часов';
  if hh = 19 then  h := 'семь часов';
  if hh = 20 then  h := 'восемь часов';
  if hh = 21 then  h := 'девять часов';
  if hh = 22 then  h := 'десять часов';
  if hh = 23 then  h := 'одиннадцать часов';

  ////////
  if mm in [1..5] then result := 'пять минут назад было ';
  if mm in [6..10] then result := 'десять минут назад было ';
  if mm in [11..15] then result := 'пятнадцать минут назад было ';
  if mm in [16..20] then result := 'двадцать минут назад было ';
  if mm in [21..25] then result := 'двадцать пять минут назад было  ';
  if mm in [26..30] then result := 'полчаса назад было ';
  if mm in [31..35] then result := 'без двадцати пяти минут ';
  if mm in [36..40] then result := 'без двадцати минут  ';
  if mm in [41..45] then result := 'без пятнадцати минут ';
  if mm in [46..50] then result := 'через десять минут будет ';
  if mm in [51..59] then result := 'через пять минут будет  ';
  if mm in [0] then result := 'сейчас ровно ';
  result := result + ' ' + h;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  hh, mm : integer;
begin
  hh := StrToInt(FormatDateTime('hh', now));
  mm := StrToInt(FormatDateTime('nn', now));
  Label1.Text := TimeToStr(hh,mm);
end;

Последний раз редактировалось Serge_Bliznykov; 18.04.2009 в 21:25.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.04.2009, 22:04   #6
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

спасибо... очень помог...
ZuBy вне форума Ответить с цитированием
Старый 19.04.2009, 10:33   #7
Juggernaut
Пользователь
 
Регистрация: 18.04.2009
Сообщений: 55
По умолчанию

Бл, я же их сделал... видать просто перепаковал в зип. Простите...
Весы слева, не забыли?

Абсурдопедия
Juggernaut вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Java script отображается! DragomirTheSorrow JavaScript, Ajax 2 08.05.2009 18:35
помогите разобраться с Java Script pangolin2 JavaScript, Ajax 0 30.10.2008 01:29
Требуется программист на Java script Ryoleg Фриланс 5 27.04.2008 23:01