Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-10-2003, 13:01   #1 (permalink)
Halbwissender
 
Benutzerbild von r2-d2
 
Registriert seit: Jul 2002
Ort: Leipzig
Beiträge: 184
Adressierung eines Textfeldes??

Hallo Gemeinde,

irgendwie ist ein Textfeld verschollen.
Am Anfang erschaffe ich einen MC mit:

function felderErzeugen()
{
x_werte = new Array(0,50,100,150,200,250,300,350);
y_werte = new Array(0,0,0,0,0,0,0,0);
_root.createEmptyMovieClip("zahlenMC",1);
zahlenMC._x=140;
zahlenMC._y=235;
for (i=1;i<=x_werte.length;i++)
{zahlenMC.createTextField("feld"+i, i, x_werte[i-1], y_werte[i-1], 100 , 20);

zahlenMC["feld"+i].border = false;
zahlenMC["feld"+i].text = i;//nur mal so 1-8 reinschreiben
var tf = new TextFormat();
tf.color = 0x003700;
tf.size = 24;

zahlenMC["feld"+i].setTextFormat(tf);

//zahlenMC["feld"+i].loadFont("gaze.swf", i);
}
}


Bis hierher ist alles super. Es steht 1-8 da.
Doch beim Anzeigen der gewürfelten Zahlen sind die Textfelder plötzlich nicht mehr wie oben zu beschreiben.




tageArray = new Array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 ,19,20,21,22,23,24);

function zahlenAnzeigen()
{

Hier springt er zwar rein aber zahlenMC["feld"+i].text kennt er nicht mehr. Warum nicht?


trace(zahlenMC["feld"+1].text);

for (i=1;i<=24;i++)
{

Hier passiert also nix mehr

zahlenMC["feld"+i].text = tageArray[i-1];
zahlenMC["feld"+i].text = "A";
}
}



//Hier mische ich bloß mein Array durcheinander

function zahlenMischen()
{
for (i=1;i<=100;i++)
{
zahl1 = Math.floor(Math.random()*24);
zahl2 = Math.floor(Math.random()*24);
tempo = tageArray[zahl1];
tageArray[zahl1] = tageArray[zahl2];
tageArray[zahl2] = tempo;
}
zahlenAnzeigen();
}
felderErzeugen();
zahlenMischen();
stop();
__________________
:) Möge die Macht mit Dir sein.

XING/openBC
r2-d2 ist offline   Mit Zitat antworten
Alt 14-10-2003, 13:19   #2 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
geht doch.das müste aber so heißen.
ActionScript:
  1. function zahlenAnzeigen(){
  2. for (i=1;i<=x_werte.length;i++){
  3. zahlenMC["feld"+i].text = tageArray[i-1];
  4. }
  5. }
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 14-10-2003, 13:37   #3 (permalink)
Halbwissender
 
Benutzerbild von r2-d2
 
Registriert seit: Jul 2002
Ort: Leipzig
Beiträge: 184
bei mir geht da nix.

Hast Du es probiert? Oder denkst Du nur, dass es gehen müsste?
__________________
:) Möge die Macht mit Dir sein.

XING/openBC
r2-d2 ist offline   Mit Zitat antworten
Alt 14-10-2003, 13:40   #4 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
habe es getestet. es geht
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 14-10-2003, 13:59   #5 (permalink)
Halbwissender
 
Benutzerbild von r2-d2
 
Registriert seit: Jul 2002
Ort: Leipzig
Beiträge: 184
Hier mal mein Text 1:1 kopiert


function felderErzeugen()
{
x_werte = new Array(0,50,100,150,200,250,300,350,0,50,100,150,20 0,250,300,350,0,50,100,150,200,250,300,350);
y_werte = new Array(0,0,0,0,0,0,0,0,50,50,50,50,50,50,50,50,100, 100,100,100,100,100,100,100);
_root.createEmptyMovieClip("zahlenMC",1);
zahlenMC._x=140;
zahlenMC._y=235;
for (i=1;i<=x_werte.length;i++)
{zahlenMC.createTextField("feld"+i, i, x_werte[i-1], y_werte[i-1], 100 , 20);

zahlenMC["feld"+i].border = false;
zahlenMC["feld"+i].text = i;
var tf = new TextFormat();
tf.color = 0x003700;
tf.size = 24;
zahlenMC["feld"+i].setTextFormat(tf);
//zahlenMC["feld"+i].loadFont("gaze.swf", i);
}
}


tageArray = new Array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 ,19,20,21,22,23,24);




function zahlenAnzeigen()
{
trace(tageArray);
zahlenMC["feld"+1].text = "Rocco";
trace(zahlenMC["feld"+1].text);
trace ("Hallo");
trace(_level0.zahlenMC.feld1._x);



for (i=1;i<=24;i++)
{
zahlenMC["feld"+i].text = tageArray[i-1];
zahlenMC["feld"+i].text = "A";
}
}

/*
function zahlenAnzeigen(){
for (i=1;i<=x_werte.length;i++){
zahlenMC["feld"+i].text = tageArray[i-1];
}
}
*/

function zahlenMischen()
{
for (i=1;i<=100;i++)
{
zahl1 = Math.floor(Math.random()*24);
zahl2 = Math.floor(Math.random()*24);
tempo = tageArray[zahl1];
tageArray[zahl1] = tageArray[zahl2];
tageArray[zahl2] = tempo;
}
zahlenAnzeigen();
}
felderErzeugen();
zahlenMischen();
stop();

der geht bei mir nicht
Und noch eine Frage. Ich habe auf der Seite über den Textfeldern Buttons, welche nun leider dank dynamischer Erzeugung unter den Textfeldern sind. Zumindest bekomme ich jetzt einen Textcursor beim Überfahren und kann die Buttons somit nicht mehr anklicken. Was kann man da machen?


mfg

Rocco
__________________
:) Möge die Macht mit Dir sein.

XING/openBC
r2-d2 ist offline   Mit Zitat antworten
Alt 14-10-2003, 14:31   #6 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
so geht es.
du must die tiefen der buttons über die texte setzen.
ActionScript:
  1. function felderErzeugen() {
  2.     x_werte = new Array(0, 50, 100, 150, 200, 250, 300, 350, 0, 50, 100, 150, 200, 250, 300, 350, 0, 50, 100, 150, 200, 250, 300, 350);
  3.     y_werte = new Array(0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 100, 100, 100, 100, 100, 100, 100, 100);
  4.     _root.createEmptyMovieClip("zahlenMC", 1);
  5.     zahlenMC._x = 50;
  6.     zahlenMC._y = 235;
  7.     for (i=1; i<=x_werte.length; i++) {
  8.         zahlenMC.createTextField("feld"+i, i, x_werte[i-1], y_werte[i-1], 100, 20);
  9.         zahlenMC["feld"+i].border = false;
  10.         zahlenMC["feld"+i].autoSize=true
  11.         zahlenMC["feld"+i].type="dynamic"
  12.         zahlenMC["feld"+i].text = i;
  13.         var tf = new TextFormat();
  14.         tf.color = 0x003700;
  15.         tf.size = 16;
  16.         zahlenMC["feld"+i].setTextFormat(tf);
  17.         //zahlenMC["feld"+i].loadFont("gaze.swf", i);
  18.     }
  19. }
  20. tageArray = new Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24);
  21.  
  22. function zahlenAnzeigen(){
  23. for (i=1;i<=x_werte.length;i++){
  24. zahlenMC["feld"+i].text = tageArray[i-1];
  25. }
  26. }
  27.  
  28. function zahlenMischen() {
  29.     for (i=1; i<=100; i++) {
  30.         zahl1 = Math.floor(Math.random()*24);
  31.         zahl2 = Math.floor(Math.random()*24);
  32.         tempo = tageArray[zahl1];
  33.         tageArray[zahl1] = tageArray[zahl2];
  34.         tageArray[zahl2] = tempo;
  35.     }
  36.     zahlenAnzeigen();
  37. }
  38. felderErzeugen();
  39. zahlenMischen();
  40. stop();
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 14-10-2003, 15:11   #7 (permalink)
Halbwissender
 
Benutzerbild von r2-d2
 
Registriert seit: Jul 2002
Ort: Leipzig
Beiträge: 184
Danke Harry,

jetzt geht es prima. Das Problem war die Methode loadFont auf meine Textfelder. Solange die nicht durch war, gab es die Textfelder noch nicht. Das musste also bei Dir auf Anhieb klappen mit der auskommentierten loadFont-Zeile.
Aber mit meinem gepflegten Halbwissen weiß ich natürlich nicht, wie man Buttons weiter oben hinsetzt. Offenbar hat es nichts mit den Zeitleisten auf der Bühne zu tun. Der Actionscript steht ganz unten in der untersten Zeitleiste und die Buttonsebene ist viel weiter oben. Kannst Du mir da mal noch auf die Sprünge helfen. Wäre super.

mfg

Rocco
__________________
:) Möge die Macht mit Dir sein.

XING/openBC
r2-d2 ist offline   Mit Zitat antworten
Alt 14-10-2003, 15:16   #8 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
da du deine textfelder alle im zahlenmc hast und der auf tiefe 1
steht.
ActionScript:
  1. _root.createEmptyMovieClip("zahlenMC", 1);
brauchst du deine buttons nur in as höher setzten.
ActionScript:
  1. buttons.swapDepths(100);
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 14-10-2003, 16:47   #9 (permalink)
Halbwissender
 
Benutzerbild von r2-d2
 
Registriert seit: Jul 2002
Ort: Leipzig
Beiträge: 184
meine Buttons haben keine Instanzennamen. Wo schreibe ich das denn hin? Oder muss ich welche haben?
__________________
:) Möge die Macht mit Dir sein.

XING/openBC
r2-d2 ist offline   Mit Zitat antworten
Alt 14-10-2003, 16:53   #10 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
genau da wie bei den mc.
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 06:14 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele