Zeichnen von Formen mit integrierten Methoden

Flash Player 9 und höher, Adobe AIR 1.0 und höher

Für das Zeichnen von häufig vorkommenden Formen wie Kreise, Ellipsen, Rechtecke und Rechtecke mit abgerundeten Ecken enthält ActionScript 3.0 zur leichteren Handhabung entsprechende Methoden. Dabei handelt es sich um die Methoden drawCircle() , drawEllipse() , drawRect() und drawRoundRect() der Graphics-Klasse. Diese Methoden können anstelle der Methoden lineTo() und curveTo() verwendet werden. Sie müssen dennoch vor dem Aufrufen dieser Methoden Linien- und Füllstile angeben.

Im folgenden Beispiel wird das Codebeispiel zum Erstellen roter, grüner und blauer Quadrate mit einer Breite und Höhe von 100 Pixel erneut verwendet. In diesem Codebeispiel kommt die drawRect() -Methode zum Einsatz. Zusätzlich wird für die Füllfarbe der Alphawert 50 % (0,5) angegeben:

var squareSize:uint = 100; 
var square:Shape = new Shape(); 
square.graphics.beginFill(0xFF0000, 0.5); 
square.graphics.drawRect(0, 0, squareSize, squareSize); 
square.graphics.beginFill(0x00FF00, 0.5); 
square.graphics.drawRect(200, 0, squareSize, squareSize); 
square.graphics.beginFill(0x0000FF, 0.5); 
square.graphics.drawRect(400, 0, squareSize, squareSize); 
square.graphics.endFill(); 
this.addChild(square);

In einem Sprite- oder MovieClip-Objekt wird der mit der graphics -Eigenschaft erstellte Zeicheninhalt immer hinter allen untergeordneten Anzeigeobjekten des jeweiligen Objekts angezeigt. Darüber hinaus handelt es sich beim Inhalt der graphics -Eigenschaft um kein eigenständiges Anzeigeobjekt, sodass es nicht in der Liste der untergeordneten Objekte eines Sprite- oder MovieClip-Objekts angezeigt wird. Um das folgende Sprite-Objekt wird beispielsweise mit der graphics -Eigenschaft ein Kreis gezogen. Zudem wird ein TextField-Objekt in der Liste der zugehörigen untergeordneten Anzeigeobjekte angezeigt:

var mySprite:Sprite = new Sprite(); 
mySprite.graphics.beginFill(0xFFCC00); 
mySprite.graphics.drawCircle(30, 30, 30); 
var label:TextField = new TextField(); 
label.width = 200; 
label.text = "They call me mellow yellow..."; 
label.x = 20; 
label.y = 20; 
mySprite.addChild(label); 
this.addChild(mySprite);

Beachten Sie, dass das TextField-Objekt oberhalb des mit dem Graphics-Objekts gezeichneten Kreises angezeigt wird.