Völlig falsches Datum angezeigt [Flash 9]
| 10.10.2009, 22:39 | | Beiträge: 11 Registriert: Oct 2009
| Völlig falsches Datum angezeigt hallo zusammen,
ich setze mich erst seit kurzer zeit mit flash auseinander, da ich eigentlich grafiker bin und programmieren bisher ein buch mit 700 siegeln für mich war. die einfachen funktionen (wysiwyg) begreife ich duch tutorials und flashhilfe meist, doch jetzt habe ich ein problem das meine stark begrenzten kenntnisse übersteigt:
ich habe anhand eines sehr guten tutorials (http://www.onetwomax.de/magazin/11421/)
eine digitaluhr gebastelt, bei der es wichtig war auf eigene symbole zurückzugreifen.
das hat prima funktioniert, dann habe ich es selbstständig mit dem datum versucht...
anstelle des 10.10.2009 wird der 06.09.1090 angezeigt! da die scriptbefehle für mich böhmische dörfer sind poste ich sie hier, damit mir vielleicht ein profi sagen kann was genau ich ändern muss...
ActionScript:1 2 3 4 5 6 7 8 9 | onClipEvent(enterFrame) {
date = new Date();
day = date.getDay();
day = (day < 10) ? "0" + String(day) : String(day);
month = date.getMonth();
month = (month < 10) ? "0" + String(month) : String(month);
year = date.getYear();
year = (year < 10) ? "0" + String(year) : String(year);
}
|
die ensprechenden movieclips enthalten folgendes script:
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.day.substr(0,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.day.substr(1,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.month.substr(0,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.month.substr(1,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.year.substr(0,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.year.substr(1,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.year.substr(2,1)) + 1);
}
|
ActionScript:1 2 3 | onClipEvent (enterFrame) {
gotoAndStop (Number(_parent.action.year.substr(3,1)) + 1);
}
|
ich hoffe ich konnte mich verständlich machen... ich hätte es gar nicht weiter versucht wenn nichts passiert wär, aber es ist halt "nur" ein völlig falsches datum. vielen dank im voraus! | |
| 10.10.2009, 23:17 | Re1 | Beiträge: 924 Registriert: Jul 2008
| Hallo,
erstell auf der Bühne ein dynamisches Textfeld mit dem Instanznamen "uhr_txt" und teste folgendes Skript, einfach auf der Hauptzeitleiste einfügen:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | function digitaluhr():Void {
var s:String = "";
var jetzt:Date = new Date();
// Tag
if (jetzt.getDate() < 10) s = "0";
s += String(jetzt.getDate()) + ".";
// Monat
if (jetzt.getMonth()+1 < 10) s += "0";
s += String(jetzt.getMonth()+1) + ".";
// Jahr
s += String(jetzt.getFullYear()) + " ";
// Stunde
if (jetzt.getHours() < 10) s += "0";
s += String(jetzt.getHours()) + ":";
// Minute
if (jetzt.getMinutes() < 10) s += "0";
s += String(jetzt.getMinutes()) + ":";
// Sekunde
if (jetzt.getSeconds() < 10) s += "0";
s += String(jetzt.getSeconds());
// Funktionswert zurückgeben
uhr_txt.text = s;
}
// Digitaluhr beim Start ausführen
digitaluhr();
// regelmäßiger Aufruf
setInterval(digitaluhr, 1000);
|
Grüße,
KerstinWer Rechtschreibfehler findet, darf sie gerne behalten. | |
| 10.10.2009, 23:47 | Re2 | Beiträge: 11 Registriert: Oct 2009
Themenautor/in
| funtioniert einwandfrei, danke.
leider löst das nicht mein problem mit den eigenen ziffersymbolen, die ich gerne verwenden würde (wenn ich das richtig verstanden habe). sollte sich da keine lösung finden werde ich wohl auf ein dynamisches textfeld zurückgreifen müssen.
ich habe meine übungsdatei mal drangehängt, falls jemand zeit und lust hat sie sich anzusehen. | Geändert von flashnizm am 10.10.09 um 23:53 Uhr
| |
|
| | | nicht sichtbar bei eingeloggten Mitgliedern |
|
| 11.10.2009, 09:42 | Re3 | Beiträge: 924 Registriert: Jul 2008
| kein Anhang daWer Rechtschreibfehler findet, darf sie gerne behalten. | |
| 11.10.2009, 09:50 | Re4 | Beiträge: 11 Registriert: Oct 2009
Themenautor/in
| tatsächlich. seltsam, gestern war er noch da. also auf ein neues.
uhr_test.fla (49.50 KB) | |
| 11.10.2009, 11:21 | Re5 | Beiträge: 924 Registriert: Jul 2008
| Hi,
setz die 0 in dem MC mit den Ziffern auf Frame 10 ("1" auf Frame 1, "2" auf Frame 2 usw.) und folgendes Skript auf die Hauptzeitleiste:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | function digitaluhr():Void {
var jetzt:Date = new Date();
// Tag
if (jetzt.getDate()<10) {
day1.gotoAndStop(10);
day2.gotoAndStop(jetzt.getDate());
} else {
Number(String(jetzt.getDate()).substr(1, 1)) == 0 ? day2.gotoAndStop(10) : day2.gotoAndStop(Number(String(jetzt.getDate()).substr(1, 1)));
}
// Monat
if (jetzt.getMonth()+1<10) {
month1.gotoAndStop(10);
month2.gotoAndStop(jetzt.getMonth()+1);
} else {
Number(String(jetzt.getMonth()+1).substr(1, 1)) == 0 ? month2.gotoAndStop(10) : month2.gotoAndStop(Number(String(jetzt.getMonth()+1).substr(1, 1)));
}
// Jahr
year1.gotoAndStop(Number(String(jetzt.getFullYear()).substr(0, 1)));
Number(String(jetzt.getFullYear()).substr(1, 1)) == 0 ? year2.gotoAndStop(10) : year2.gotoAndStop(Number(String(jetzt.getFullYear()).substr(1, 1)));
Number(String(jetzt.getFullYear()).substr(2, 1)) == 0 ? year3.gotoAndStop(10) : year3.gotoAndStop(Number(String(jetzt.getFullYear()).substr(2, 1)));
Number(String(jetzt.getFullYear()).substr(3, 1)) == 0 ? year4.gotoAndStop(10) : year4.gotoAndStop(Number(String(jetzt.getFullYear()).substr(3, 1)));
// Stunde
if (jetzt.getHours() == 0) {
hour1.gotoAndStop(10);
hour2.gotoAndStop(10);
} else if (jetzt.getHours>0 && jetzt.getHours()<10) {
hour1.gotoAndStop(10);
hour2.gotoAndStop(jetzt.getHours());
} else {
hour1.gotoAndStop(Number(String(jetzt.getHours()).substr(0, 1)));
Number(String(jetzt.getHours()).substr(1, 1)) == 0 ? hour2.gotoAndStop(10) : hour2.gotoAndStop(Number(String(jetzt.getHours()).substr(1, 1)));
}
// Minute
if (jetzt.getMinutes() == 0) {
minute1.gotoAndStop(10);
minute2.gotoAndStop(10);
} else if (jetzt.getMinutes()>0 && jetzt.getMinutes()<10) {
minute1.gotoAndStop(10);
minute2.gotoAndStop(jetzt.getMinutes());
} else {
minute1.gotoAndStop(Number(String(jetzt.getMinutes()).substr(0, 1)));
Number(String(jetzt.getMinutes()).substr(1, 1)) == 0 ? minute2.gotoAndStop(10) : minute2.gotoAndStop(Number(String(jetzt.getMinutes()).substr(1, 1)));
}
// Sekunde
if (jetzt.getSeconds() == 0) {
second1.gotoAndStop(10);
second2.gotoAndStop(10);
} else if (jetzt.getSeconds()<10) {
second1.gotoAndStop(10);
second2.gotoAndStop(jetzt.getSeconds());
} else {
second1.gotoAndStop(Number(String(jetzt.getSeconds()).substr(0, 1)));
Number(String(jetzt.getSeconds()).substr(1, 1)) == 0 ? second2.gotoAndStop(10) : second2.gotoAndStop(Number(String(jetzt.getSeconds()).substr(1, 1)));
}
}
// Digitaluhr beim Start ausführen
digitaluhr();
// regelmäßiger Aufruf
setInterval(digitaluhr,1000);
|
Grüße,
KerstinWer Rechtschreibfehler findet, darf sie gerne behalten. | |
| | | nicht sichtbar bei eingeloggten Mitgliedern | 
|
| 11.10.2009, 12:13 | Re6 | Beiträge: 11 Registriert: Oct 2009
Themenautor/in
| juchuuu, genau so wollte ich es haben! danke vielmals! | |
| 23.10.2009, 17:56 | Re7 | Beiträge: 11 Registriert: Oct 2009
Themenautor/in
| hallo mal wieder,
leider ist mir doch noch ein bzw zwei fehler aufgefallen:
1. das heutige datum (23.10.2009) wird nicht korrekt angezeigt, sondern 13.10.2009.
stelle ich die systemuhr auf den 13. oder den 03. ist die anzeige wiederum korrekt.
datum: 23.10.2009
anzeige: 13.10.2009
2. die uhrzeit wird falsch angezeigt wenn die erste stunde 0 beträgt, dann werden die stellen umgedreht und die 0 duch die 1 ersetzt, beispiel:
uhrzeit: 03:57
anzeige: 31:57
da der code für mich etwas zu hoch ist wäre ich für (wiederholte) hilfe äußerst dankbar!
grüße
rouven | |
| 23.10.2009, 18:38 | Re8 | Beiträge: 924 Registriert: Jul 2008
| uups, das sollte nicht passieren.
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | function digitaluhr():Void {
var jetzt:Date = new Date();
var tag:Number = jetzt.getDate();
var monat:Number = jetzt.getMonth()+1;
var jahr:Number = jetzt.getFullYear();
var stunde:Number = jetzt.getHours();
var minute:Number = jetzt.getMinutes();
var sekunde:Number = jetzt.getSeconds();
// Tag
if (tag<10) {
day1.gotoAndStop(10);
day2.gotoAndStop(tag);
} else {
day1.gotoAndStop(Number(String(tag).substr(0, 1)));
Number(String(tag).substr(1, 1)) == 0 ? day2.gotoAndStop(10) : day2.gotoAndStop(Number(String(tag).substr(1, 1)));
}
// Monat
if (monat<10) {
month1.gotoAndStop(10);
month2.gotoAndStop(monat);
} else {
Number(String(monat).substr(1, 1)) == 0 ? month2.gotoAndStop(10) : month2.gotoAndStop(Number(String(monat).substr(1, 1)));
}
// Jahr
year1.gotoAndStop(Number(String(jetzt.getFullYear()).substr(0, 1)));
Number(String(jahr).substr(1, 1)) == 0 ? year2.gotoAndStop(10) : year2.gotoAndStop(Number(String(jahr).substr(1, 1)));
Number(String(jahr).substr(2, 1)) == 0 ? year3.gotoAndStop(10) : year3.gotoAndStop(Number(String(jahr).substr(2, 1)));
Number(String(jahr).substr(3, 1)) == 0 ? year4.gotoAndStop(10) : year4.gotoAndStop(Number(String(jahr).substr(3, 1)));
// Stunde
if (stunde == 0) {
hour1.gotoAndStop(10);
hour2.gotoAndStop(10);
} else if (stunde>0 && stunde<10) {
hour1.gotoAndStop(10);
hour2.gotoAndStop(stunde);
} else {
hour1.gotoAndStop(Number(String(stunde).substr(0, 1)));
Number(String(stunde).substr(1, 1)) == 0 ? hour2.gotoAndStop(10) : hour2.gotoAndStop(Number(String(stunde).substr(1, 1)));
}
// Minute
if (minute == 0) {
minute1.gotoAndStop(10);
minute2.gotoAndStop(10);
} else if (minute>0 && minute<10) {
minute1.gotoAndStop(10);
minute2.gotoAndStop(minute);
} else {
minute1.gotoAndStop(Number(String(minute).substr(0, 1)));
Number(String(minute).substr(1, 1)) == 0 ? minute2.gotoAndStop(10) : minute2.gotoAndStop(Number(String(minute).substr(1, 1)));
}
// Sekunde
if (sekunde == 0) {
second1.gotoAndStop(10);
second2.gotoAndStop(10);
} else if (jetzt.getSeconds()<10) {
second1.gotoAndStop(10);
second2.gotoAndStop(sekunde);
} else {
second1.gotoAndStop(Number(String(sekunde).substr(0, 1)));
Number(String(sekunde).substr(1, 1)) == 0 ? second2.gotoAndStop(10) : second2.gotoAndStop(Number(String(sekunde).substr(1, 1)));
}
}
// Digitaluhr beim Start ausführen
digitaluhr();
// regelmäßiger Aufruf
setInterval(digitaluhr,1000);
|
So ist es vielleicht auch etwas übersichtlicher ;-)
Grüße,
KerstinWer Rechtschreibfehler findet, darf sie gerne behalten. | Geändert von Kerstin77 am 23.10.09 um 18:40 Uhr
| |
|
| 24.10.2009, 02:53 | Re9 | Beiträge: 11 Registriert: Oct 2009
Themenautor/in
| einwandfrei! alles so wie´s sein soll!
wieder mal ein dickes dankeschön Kerstin!
:D | |
| | Themen Ähnliche Beiträge zum Thema | 04.12.2010 - bowlklaus 22.01.2010 - oceano 17.02.2010 - blankface 19.04.2011 - Tacco |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|