uhr erstellen mit variablem

K

kroschka

FÜR NACHKOMMENDE GENERATIONEN NEU EDITIERT:

ich habe ein mc (movieclip) mit 10 frames gemacht, pro frame eine ziffer von 0 bis 9,

habe dann 6 instanzen auf die bühne gezogen,
sieht so aus:

XX XX XX

und das prob ist wie ich via variablen (kein plan ob im hauptframe oder in den einzelnen instanzen) ich nun eine uhr daraus basteln kann mit stunden, minunten und sekunden

ist das klarer jetzt? :D

und ja, altmodisch = nicht mit gettimebefehl oder welche es da auch gibt, hab noch nie mit zeit in flash arbeiten müssen *G kenn mich deswegen mit der sparte nicht aus
 
Zuletzt bearbeitet von einem Moderator:
Hi

was hindert Dich daran, das Date-Objekt und seine Methoden getSeconds, getMinutes usw. zu benutzen? ... Oh, ich glaube, jetzt hab ichs verstanden (btw: durch die vielen Abkürzungen und die durchgehende Kleinschreibung ist Dein Beitrag auf Anhieb etwas schwer zu lesen): Ich nehme an, Du hast eine Framerate von 1 Bild pro Sekunde? Ohne einiges an AS wirst Du da nicht großartig weiterkommen, da nicht nur die 10er der Sekunden und Minuten nur bis 5 zählen sollen, sondern auch z.B. die Minuten erst hochzählen sollen, wenn 59 Sekunden vergangen sind... folgendes könnte klappen:

Setze Deine 6 Clips auf die Bühne und gib ihnen Instanznahmen wie "Sekunden_1er", "Sekunden_10er", Minuten_1er" usw.

Setze in das erste Bild Deines MovieClips ein "stop()" und gib folgendes AS im ersten Bild der Hauptzeitleiste ein (braucht eine Framerate von 1, wenn Du nicht mit timern oder Date() arbeiten willst):
PHP:
sekunden1=sekunden10=minuten1=minuten10=stunden1=minuten1=1;

this.onEnterFrame=function() {
    sekunden1++;
    if (sekunden1>10) {
        sekunden1=1;
        sekunden10++;
    }
    if (sekunden10>6) {
        sekunden10=1;
        minuten1++;
    }
    if (minuten1>10) {
        minuten1=1;
        minuten10++;
    }
    if (minuten10>6) {
        minuten10=1;
        stunden1++;
    }
    if (stunden1>10) {
        stunden1=1;
        stunden10++;
    }
    if (stunden10>3 || (stunden10==3 && stunden1>4) {
        stunden10=1;
        stunden1=1;
    }
    Sekunden_1er.gotoAndStop(sekunden1);
    Sekunden_10er.gotoAndStop(sekunden10);
    Minuten_1er.gotoAndStop(minuten1);
    Minuten_10er.gotoAndStop(minuten10);
    Stunden_1er.gotoAndStop(stunden1);
    Stunden_10er.gotoAndStop(stunden10);
}
So, ich hoffe das funktioniert, ist aber auf jeden Fall viel umständlicher, als das Date()-Objekt zu verwenden... ;)

Gruß
 
Hallo Kroschka,
Du denkst an eine Uhr mit digitaler Anzeige?
Versuche einmal das Folgende:
Ebene1, Frame 1 ausreichend breites Textfeld für 8 Zeichen anlegen,
F8 drücken und als Verhalten= Movieclip auswählen.
Movieclip zum Bearbeiten öffnen : Textfeld = Dynamischer Text (Einzelzeile) und
vars = uhr eintragen. (Schriftart,-farbe und -größe nach Gusto)

In den Aktionen für Frame 1 der Hauptzeitleiste folgendes AS:

onClipEvent(enterFrame) {
var datum = new Date();
var stunde = datum.getHours();
if (stunde < 10)
stunde = "0" + stunde;
var minute = datum.getMinutes();
if (minute < 10)
minute = "0" + minute;
var sekunde = datum.getSeconds();
if (sekunde < 10)
sekunde = "0" + sekunde;
uhr = stunde + ":" + minute + ":" + sekunde;
}

testen.

Deine Frage würde lesbarer, wenn Du Dir die netiquette zu Herzen nähmest.
Edit:
O,o ich bin zu langsam.
 
Zuletzt bearbeitet:
@oldmanjo: Ja, mit dem Date-Objekt macht es natürlich mehr Sinn! :) Nicht nur mit Textfeldern, sondern sogar mit diesen "Zählerclips" kommst Du mit dem Date-Objekt schnell zum Ziel; man kann ja die Werte von "getMinutes" usw. in 10-er und 1-er trennen (Math.floor(minutes/10) und (minutes-Math.floor(minutes/10)*10), um damit die Clips anzusteuern...

Gruß
 
Zuletzt bearbeitet:
dann erklärt mir das mit datemanager *G hab die nacht am pc verbracht, musst da noch was anderes machen, aber in nen frühen morgenstunden hat mir flash schlichtweg nicht die suchfunktion für die action script hilfe zeigen wollen, deswegen hab ich manuell gesucht , aber nix zu zeit gefunden *G

*sich wie nup fühlt *G (ist es w ohl auch, rofl)

ach ja, tut mir leid, falls ich grad verständnisloses zeug plapper, bin müde :) *entschuldigend guckt und kaffee reicht*

ach ja, noch was, ich benutz flash mx *G also das zweitneueste, soweit ich gut mitgezählt hab :) hab vorhin hier beim suchen gesehen, da hat einer 2 versionen gehabt und benutzt die ältere *G ich hab nur eine
 
Zuletzt bearbeitet von einem Moderator:
Hi,
@Datic:
Ich muß gestehen daß ich mit der Frage nicht ganz klar kam.
Auf altmodische Art und Weise ? dann analog! 6 MC ?
Man kann sich allerdings zu Lernzwecken selbst solche Aufgaben stellen.
Ich hab ja auch aus einem alten Baumstamm für meinen Enkel das "Auto"
der Familie Feuerstein nachgebaut. Scheibenräder- selbstgesägt.
 
PHP:
heute = new Date(); // gibt dir das aktuelle Datum und die Zeit als Objekt
sekunden = heute.getSeconds(); // gibt Dir die Sekunden zurück
minuten = heute.getMinutes(); // gibt Dir die Minuten zurück
stunden = heute.getHours(); // gibt Dir die Stunden zurück
// Wenn Du es ohne Textfelder mach wills:
sekunden_zehner = Math.floor(sekunden/10);
sekunden_einer = sekunden - (sekunden_zehner * 10);
// mit diesen beiden Werten kannst Du deine Zählerclips ansteuern:
sek_clip_einer.gotoAndStop(sekunden_einer);
sek_clip_zehner.gotoAndStop(sekunden_zehner);

Gruß

P.S.: das mit den Netiquette (bzw. Groß- und Kleinschreibung) war ernst gemeint. Bitte versuche, ein wenig darauf zu achten! ... ok, wenn Du müde bist, verstehe ich das natürlich - die Nacht durchgemacht? wird schon wieder!

EDIT: @oldmanjo: klar! :) - ich habe zuerst an ein rundes Ding mit Zeigern gedacht, als ich "altmodische Art" hörte... :-) Gruß
 
Zuletzt bearbeitet:
habs neu editiert, meinen ersten post, ists nun klarer?

und ja, altmodisch = nicht mit gettimebefehl oder welche es da auch gibt, hab noch nie mit zeit in flash arbeiten müssen *G kenn mich deswegen mit der sparte nicht aus,

ps, wäre auch sehr hilfreich, falls mir jemand da mit tutorials oder links weiterhelfen kann, habe bei tutorials.de nicht wirklich viel gefunden dazu
 
ok, ich habe mein erstes Beispiel mal eben in einer Datei getestet... und hier als Anhang beigefügt: Total Oldschool, ohne Timer, ohne Date(), dafür aber mit Textfeldern (weil ich zu faul war, 10 Frames mit Zahlen zu basteln).. ;)

Die Uhr läuft natürlich viel zu schnell; stelle eine Framerate von 1/sec. ein, dann sollte sie ungefähr wie eine Uhr laufen ... bedenke aber, dass das ganze auch so viel ungenauer als mit Timer laufen wird... eben altmodisch wie zu Großmutters Zeiten ;)

Gruß
 

Anhänge

ah thx, wollts zwar eigentlich nicht, dass man es mir fast ganz fertigmacht, weil i mich dann no dümmer fühl, aber jetzt kann ichs wenigstens auseinanderpflücken und so lernen :D

ne letzte frage: haste zu den ganzen time befehlen vielleicht nen link für mich, wo ich das vll etwas erklärt ist, in der flashhilfe sind so gut wie garkeine beispiele dazu *G

wenn grad nix weiss, brauchs du nicht extra suchen oder was machen, werd schon selber irgendwann dsa au mal raffen :)

gruss und thx nochmal, schatzi :D
 
Zurück