Просмотр полной версии : Вывод даты...
Как сделать, чтобы во флэш ролике динамически отображалась дата в таком формате сб 13.03.2004, где сб день недели. Как на Jav'е сделать я знаю, а вот с Action Script у меня не очень пока.
P.S.
И еще такой вопрос: как можно вставить такой (с датой) Java-скрипт во Флэш. Насчет переменных мне все понятно, но я в Jav'e использую вот еще что document.write(перечисление переменных), как с этим быть?
Попробуй вместо документ.врайт сделать динамический текст и в строке где ему присваивается переменная задай ту которую тебе вывести нуна.
По поводу отображения даты в вышеприведенном формате: RTFM -> ActionScript Dictionary -> D -> Date class -> Date.getDay(), Date.getDate(), Date.getMonth(), Date.getFullYear(). Date.getDay() (он от 0 до 6) проверяешь case'ом и выдаешь "вс", "пн", "вт" и т.д. Складываешь все вместе и viola! Да, еще вешаешь код на onClipEvent(enterFrame){} или создаешь компоненту ;)
greyshaman
27.05.2004, 12:41
createTextField("df",1,5,20,100,20);
days=["Вс","Пн","Вт","Ср","Чт","Пт","Сб"];
dt=new Date(getDate());
df.text=days[dt.getDay()]+" "+ ((dt.getDate()<10) ? "0" + dt.getDate() : dt.getDate()) + "."+((dt.getMonth()+1<10) ? "0" + (dt.getMonth()+1) : (dt.getMonth()+1)) + "."+dt.getFullYear();
tf = new TextFormat();
tf.font="Arial";tf.bold = true;tf.color=0x999999;
df.setTextFormat(tf);
Спасибо greyshaman. Код работает. Но помогите чайнику разобраться, что я делал неправильно.
Попрбовал вот как сделать, создал текстовое поле присвоил ему переменную date, вставил вот такой скрипт:
mydate = new Date();
data = mydate.getDate();
den = mydate.getDay();
god = mydate.getFullYear();
mes = mydate.getMonth()+1;
if (den=0) {
den2 = "вс"; }
if (den=1) {
den2 = "пн"; }
if (den=2) {
den2 = "вт"; }
if (den=3) {
den2 = "ср"; }
if (den=4) {
den2 = "чт"; }
if (den=5) {
den2 = "пт"; }
if (den=6) {
den2 = "сб"; }
if (data<10) {
data = "0"+data; }
if (mes<10) {
mes = "0"+mes; }
time = den2 add " " add data add "." add mes add "." add god; С числовыми значениями, вроде, все нормально, но вот день недели он мне выводит все время сб. В чем дело?
Жень Шень
28.05.2004, 12:16
правильно писать == а не =
(== сравнение, а = присвоение)
if (den==0) {
den2 = "вс"; }
if (den==1) {
den2 = "пн"; }
итд...
Но лучше case'ом (писали ужо!)
Извини, но я ничего не понимаю в вашем юморе, что значит: лучше case'ом Я только начинаю осваивать Flash.
kostyanK
29.05.2004, 09:33
имеется ввиду конструкция
switch ... case
Жень Шень
29.05.2004, 11:39
Это не юмор. Включай мозги! Дали ключевое слово - сходи в хэлп. Так потихоньку и освоишь флеш ;) .
Ты уж так не рви серце :) , вот код:
switch (den) {
case 0:
den2 = "вс";;
break;
case 1:
den2 = "пн";;
break;
...
case 6:
den2 = "сб";;
break;
}
Вслучаях со сравнениями знеачений на строгое равенство лучше swith и правда не найти. Но если проверять надо на разные параметры, то конструкция
if (expression1){
....} else if (expression2){
....}else if (expression3){
....} else{
.....}
выполняется на порядок быстрее.
Все гораздо проще , вот посмотри )))
Похоже, на этом можно закрыть веточку :)
А как сделать, чтобы дата по русски писалась? Попробовал изменить в экшене - вместо русских слов - вопросики!
используй UTF-8 флеш тока с ней ладит
А где во ФЛЕШ указывается кодировка?
не во флеш менять а при передаче во флеш
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.