Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-10-2010, 16:41   #1 (permalink)
Neuer User
 
Benutzerbild von Timyy
 
Registriert seit: Nov 2009
Beiträge: 223
Question addChild();

Hallo,

ich habe, denke ich, ein total simples Problem auf dessen Lösung ich einfach nicht kommen will.

Ich wollte einfach alle ... sekunden einen kleinen weißen Punkt mit Zufallskoordinaten auf der Bühne erscheinen lassen. Da ich später noch mehr mit dem Punkt anstellen will, wollte ich ihn einem Container(sprite) hinzufügen. Das ist auch schon alles, aber aus irgendeinem Grund will es einfach nicht klappen.
Also hier einfach mal der Code:

PHP-Code:
var pointRadius:Number 3;
var 
pointAnzahl:int 30;

var 
timer:Timer = new Timer(pointAnzahl);
timer.start();

timer.addEventListener(TimerEvent.TIMERproduceChild);

function 
produceChild(evt:TimerEvent){
    var 
point:MovieClip = new MovieClip();
    
    
point.graphics.drawCircle(00pointRadius);
    
point.graphics.beginFill(0xFFFFFF1);
    
point.= (Math.random()*(stage.stageWidth-1+1));
    
point.= (Math.random()*(stage.stageHeight-1+1));
    
    
pointContainer.addChild(point);
}

var 
pointContainer:Sprite = new Sprite();
    
pointContainer.addEventListener(Event.ENTER_FRAMEbewegung);
addChild(pointContainer);


function 
bewegung(evt:Event){
    
    var 
i:int pointContainer.numChildren;
     
     while(
i-- > 0){
        var 
point:MovieClip pointContainer.getChildAt(i) as MovieClip;
        
    
    }

Ich hoffe jemand findet meinen Fehler und schonmal danke im vorraus ...

Geändert von Timyy (11-10-2010 um 16:43 Uhr)
Timyy ist offline   Mit Zitat antworten
Alt 11-10-2010, 16:50   #2 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Vielleicht liegts ja schon daran, dass Du den Kreis zeichnest, bevor Du die Farbe angibst - andersrum wäre richtig:
PHP-Code:
point.graphics.beginFill(0xFFFFFF1);
point.graphics.drawCircle(00pointRadius); 
Und auch den restlich Code würde ich auch noch etwas sortieren:
  • Erstmal alle Funktion und Variablen deklarieren,
  • dann den Container erzeugen,
  • und erst am Ende die Listener hinzufügen bzw. die Funktionen aufrufen.
Noch besser wäre es natürlich ganze direkt in einer Klasse zu strukturieren.
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (11-10-2010 um 16:52 Uhr)
Martin Kraft ist gerade online   Mit Zitat antworten
Alt 11-10-2010, 16:51   #3 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 2.041
beginFill und endFill haben ihre Namen nicht von ungefähr.
Sie sollten deine Zeichenoperationen umrahmen.

Und warum das?
PHP-Code:
while(i-- > 0
Ich sehe das in letzter Zeit immer wieder. Mir ist völlig schleierhaft, warum man nicht einfach eine for Schleife statt diesem kryptischen Schnullifax verwendet. Zumal du ja wirklich nur zählen willst.
__________________
anbei Grüße vom milchreis: Viva la [Silb]

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist offline   Mit Zitat antworten
Alt 11-10-2010, 16:56   #4 (permalink)
Neuer User
 
Benutzerbild von Simse179
 
Registriert seit: Feb 2005
Beiträge: 457
Erwartet Timer nicht 2 Argumente? Verzögerung und Anzahl der Wiederholungen?
Sonst kommen weiße Punkte bis zum Umfallen
__________________
Kunde: Ich hab da mal eine dumme Frage: Online-Banner sind schon fürs Internet, oder?
Simse179 ist offline   Mit Zitat antworten
Alt 11-10-2010, 20:39   #5 (permalink)
Neuer User
 
Benutzerbild von Timyy
 
Registriert seit: Nov 2009
Beiträge: 223
Danke für die ganzen Antworten,

Mein Fehler war wie Martin Kraft und Milchreis schon sagten, dass ich beginFill vor drawCircle aufrufen muss.

Zitat:
Und warum das?
PHP-Code:
while(i-- > 0
Das weiss ich ehrlichgesagt auch nicht genau, das hab ich einfach aus nem früheren Code rauskopiert

Zitat:
Erwartet Timer nicht 2 Argumente? Verzögerung und Anzahl der Wiederholungen?
Sonst kommen weiße Punkte bis zum Umfallen
Richtig, man kann jedoch, wie in diesem Fall, auch das 2. Argument weglassen wenn der Timer niemals aufhören soll.

Geändert von Timyy (11-10-2010 um 20:40 Uhr)
Timyy ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
addchild, container, points, sprite

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
.addChild(mc) in as2 flasher_81 ActionScript 2 2 04-08-2010 14:10
addChild, removeChild mit AS3... Koyocreative ActionScript 3 1 14-01-2010 21:56
Mc addChild uncle.sam ActionScript 3 4 22-10-2009 09:47
addChild heyhey ActionScript 3 4 04-01-2008 16:57
addChild TheLight ActionScript 3 13 21-04-2007 12:02


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:27 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele