SWiSH Forum
Forum użytkowników programów SWiSH

Skrypty do programu SWiSH2 i SWISHmax - Zegarek cyfrowy

bulion - Sob 26 Mar, 2005 22:12
Temat postu: Zegarek cyfrowy
W tym przypadku rozdzielony jest zegar wraz z datownikiem.
A więc Tworzymy sobie dwa pola tekstowe które odpowiednio
konfigurujemy wizualnie i technicznie.
- wizualnie w zależności od własnych upodobań
- technicznie: ustawiamy jako dynamic text; i w polu variables wpisujemy nazwe zmiennej za którą będzie podstawiany czas i data (w tym przypadku jest to zegar).
Po wykonaniu tych czynności oba pola textowe grupujemy jako spite (każdy musi miec unikalną nazwę dla siebie {tutaj jest to datownik i czas} i te dwa sprajty znowusz grupujemy jako sprite. Przechodzimy w zakładke script i wpusujemy:

Kod:



onFrame (1) {
data=new date(); [zmienna data]
rok=data.getutcfullyear(); [zczytanie i podstawienie za zmienną rok pelego formatu roku bierzącego]
miesiac=data.getMonth(); [zczytanie i podstawienie za zmienną miesiac numeru miesiąca bierzącego]
dzien=data.getdate(); [zczytanie i podstawienie za zmienną dzien numeru dnia aktualnego]
godzina=data.gethours(); [zczytanie i podstawienie za zmienną godzina aktualnej godziny]
minuta=data.getminutes(); [zczytanie i podstawienie za zmienną minuta aktualnej minuty]
sekunda=data.getseconds(); [zczytanie i podstawienie za zmienną sekunda aktualnej sekundy]
m=miesiac+(+1); [w zwiazku z tym, ze swish zczytuje miesiące w liczbach od 0 do 11 (0=styczen.....11=grudzień) należy zwięklszyć wartość wyświetlaną]
if (minuta < 10) { [aby nie pojaiwała nam się minuta (i w dalszym przypadku sekunda) jednocyfrowa (tzn. "1" zamiast "01") jest instrukcja warunkowa]
minuta = "0" add minuta;
}
if (sekunda < 10) {
sekunda = "0" add sekunda;
}
datownik.zegar=rok add "-" add m add "-" add dzien; [podstawienie wartości do pola tekstowego za zmienną "nazwa sprajta z polem tekstowym.nazwa_zmiennej_(variables)=zmienna_rok "wyświetlany znak".....; itd"
czas.zegark=godzina add ":" add minuta add ":" add sekunda; [patrz wyżej]
}
onFrame (2) { {aby czas był aktualizowany an bierząco należy powrócić do klatki w której jest zczytywana aktualna data z czasem]
gotoAndPlay(1);
}


podesłał: taBoon
dziękujemy :mrgreen:

filip - Sob 26 Mar, 2005 23:52
Temat postu: poprawka skryptu
Witam,

Skrypt zawieral kilka drobych bledow (typowe literowki).
Gdy zastosowalem skrypt wyswietlala sie tylko data.
Ze skryptu usunalem koment.
Oto poprawiony skrypt:


Kod:
onFrame (1) {
data=new date();
rok=data.getutcfullyear();
miesiac=data.getMonth();
dzien=data.getdate();
godzina=data.gethours();
minuta=data.getminutes();
sekunda=data.getseconds();
m=miesiac+(+1);
if (minuta < 10) {
minuta = "0" add minuta;
}
if (sekunda < 10) {
sekunda = "0" add sekunda;
}
datownik.zegar=rok add "-" add m add "-" add dzien;
czas.zegar=godzina add ":" add minuta add ":" add sekunda;
}
onFrame (2) {
gotoAndPlay(1);
}



Wszystko dziala OK.

Pozdrawiam

SaLi - Nie 14 Maj, 2006 14:08

a mogłby ktoś umieścić to w swi? Byłbym bardzo wdzięczny
cactus - Pią 16 Cze, 2006 14:07

Przesylam .swi tego zegara. W miesiacu dodalem "0" przy miesiacach <10.
stefcio - Pią 16 Cze, 2006 21:42

A czas na stronie robi sie tak:

Kod:
onLoad () {
    time=0;
    timemin=0
}
onFrame (12) {
    time+=1;
    gotoAndPlay(1);
}
onFrame (12) {
}
onEnterFrame(includingFirstFrame) {
    timedis= time add ".sek";
    timemindis = timemin add ".min";
    if (time==60) {timemin+=1;
    time=0;
       
                    }
}

on frame 12 czyli co 1 sek do zmiennej odpowiadającej za sekundy dodaje sie +1:))


Powered by phpBB modified by Przemo © 2003 phpBB Group