Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 22.06.2004, 20:07
sergwizard вне форума Посмотреть профиль Отправить личное сообщение для sergwizard Посетить домашнюю страницу sergwizard Найти все сообщения от sergwizard
  № 11  
sergwizard
 
Аватар для sergwizard

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
Цитата:
sergwizard угу попросвящай
Я не думаю, что тебя надо просвещать. Но вот посоветовать ЭрСи, чтобы он не следовал твоему совету (посмотри свой пост от 21-06-2004 17:20) , я нашел нужным. Я понимаю, что ты просто ошибся, но ЭрСи этого еще не знает.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

Старый 22.06.2004, 23:29
greyshaman вне форума Посмотреть профиль Отправить личное сообщение для greyshaman Найти все сообщения от greyshaman
  № 12  
greyshaman

Регистрация: Aug 2001
Адрес: vg
Сообщений: 352
bless - mage skill
к просвещению не имеющий никакого отношения.

если бы тебе хотелось занятся просвещением, то мог бы по дороге объяснить что, getDate() натравленный на дату возвращает день месяца, а так язвил просто.

проехали

Старый 23.06.2004, 09:31
ЭрСи вне форума Посмотреть профиль Отправить личное сообщение для ЭрСи Посетить домашнюю страницу ЭрСи Найти все сообщения от ЭрСи
  № 13  
ЭрСи
 
Аватар для ЭрСи

Регистрация: Apr 2004
Адрес: МО. Орехово-Зуево
Сообщений: 27
2 greyshaman
А теперь еще разок, для чайника, и помедленее. Вставив твой код, при тестировании вылезает окно Output и начинает выдавать огромное кол-во цифр. Вы , наверное, неправильно меня поняли или я не так объяснял. Мне надо, чтобы Flash подсчитал, то кол-во дней, которые остались до даты, и вывел все это в окошко Динамического текста.
__________________
Удача благоволит подготовленному уму...

Старый 23.06.2004, 10:18
sergwizard вне форума Посмотреть профиль Отправить личное сообщение для sergwizard Посетить домашнюю страницу sergwizard Найти все сообщения от sergwizard
  № 14  
sergwizard
 
Аватар для sergwizard

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
2ЭрСи. Посмотри мой пост от21-06-2004 18:40. Там же все написано.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

Старый 23.06.2004, 11:24
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 15  
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
Tip вот вам мой сорс


Код:
next_date=new Date(2004,6,20,13,30,20,38); // new Date(год., мес., ден., час., мин., сек., мсек.);
now_date=new Date(2003,5,10,12,29,0,0); // new Date();
var delta_date=(next_date.getTime()-now_date.getTime());

with(now_date){trace("текущая дата: "+getFullYear()+"."+getMonth()+"."+getDate()+" "+getHours()+":"+getMinutes()+":"+getSeconds()+"."+getMilliseconds());};
with(next_date){trace("следующая дата: "+getFullYear()+"."+getMonth()+"."+getDate()+" "+getHours()+":"+getMinutes()+":"+getSeconds()+"."+getMilliseconds()+newline);};

trace("сколько осталось по отдельности: ");

var mo=(1000*60*60*24*31*12); // усреднил количество дней в месяце как 31
var d=(1000*60*60*24*31); // усреднил количество дней в месяце как 31
var h=(1000*60*60*24);
var m=(1000*60*60);
var s=(1000*60);
var ms=1000;

var yers=Math.floor(delta_date/mo); trace("год.: "+yers+" (усреднённое)");
var mons=Math.floor(delta_date/d); trace("мес.: "+mons+" (усреднённое)");
var days=Math.floor(delta_date/h); trace("ден.: "+days);
var hours=Math.floor(delta_date/m); trace("час.: "+hours);
var mins=Math.floor(delta_date/s); trace("мин.: "+mins);
var secs=Math.floor(delta_date/ms); trace("сек.: "+secs);
var msecs=Math.floor(delta_date); trace("мил. сек.: "+msecs);

trace(newline+newline+"сколько осталось всего в общем: ");

var yers=Math.floor(delta_date/mo);
var mons=Math.floor((delta_date-yers*mo)/d);
var days=Math.floor((delta_date-yers*mo-mons*d)/h);
var hours=Math.floor((delta_date-yers*mo-mons*d-days*h)/m);
var mins=Math.floor((delta_date-yers*mo-mons*d-days*h-hours*m)/s);
var secs=Math.floor((delta_date-yers*mo-mons*d-days*h-hours*m-mins*s)/ms);
var msecs=Math.floor(delta_date-yers*mo-mons*d-days*h-hours*m-mins*s-secs*ms);
trace(yers+"год., "+mons+"мес., "+days+"ден., "+hours+"час., "+mins+"мин., "+secs+"сек., "+msecs+"мсек. ");
trace("( "+yers+","+mons+","+days+" "+hours+":"+mins+":"+secs+"."+msecs+" )");

trace(newline+"могут быть неточности в расчётах дней, \nт.к. я усреднил число дней в месяце как 31, \nно сделать вычисление с учётом года, либо базы данных..");
trace(newline+"[расчёты Techmaker'а]");
__________________
flash it

Старый 23.06.2004, 19:21
sergwizard вне форума Посмотреть профиль Отправить личное сообщение для sergwizard Посетить домашнюю страницу sergwizard Найти все сообщения от sergwizard
  № 16  
sergwizard
 
Аватар для sergwizard

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
2ЭрСи. В личку это письмо не влезло. Поэтому отвечаю здесь.
А ты обрати внимание на разницу в коде. А именно на определение значения d3.
У тебя: d3 = d1.getDate() - d2.getDate();
У меня: d3 = d1.getTime() - d2.getTime();
Метод объекта Date getDate() возвращает значение числа в указанном месяце.
Например, если мы напишем так: d1 = new Date(); trace(d1); - в output мы получим Wed Jun 23 18:16:27 GMT+0400 2004. Если мы протрейсим trace(d1.getDate), то получим в output только сегодняшнее число (23).
А вот метод getTime() возвращает количество миллисекунд прошедших с 0.00 1 января 1970 года до той даты, которая у нас указана в new Date();
Для того, чтобы вычислить разницу (в днях) между двумя датами, мы сначала высчитываем разницу в миллисекундах (d3 = d1.getTime() - d2.getTime();), а затем переводим эти миллисекунды в дни (d4 = Math.floor(d3 / (1000 * 60 * 60 * 24));)
Ты же в своем коде высчитывал разницу в днях d3 = d1.getDate()- d2.getDate();
В этой формуле d3 равно -1 (на сегодняшний день) и, естественно –
d4 = Math.floor(-1 / (1000 * 60 * 60 * 24)) = 0.

Надеюсь, ты понял. Если нет,- спрашивай. Удачи.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

Старый 25.06.2004, 08:14
ЭрСи вне форума Посмотреть профиль Отправить личное сообщение для ЭрСи Посетить домашнюю страницу ЭрСи Найти все сообщения от ЭрСи
  № 17  
ЭрСи
 
Аватар для ЭрСи

Регистрация: Apr 2004
Адрес: МО. Орехово-Зуево
Сообщений: 27
Да, спасибо! Теперь стало немного понятней.
__________________
Удача благоволит подготовленному уму...

Создать новую тему   Часовой пояс GMT +4, время: 20:25.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:25.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.