PDA

Volledige versie bekijken : setRGB() met een border


pgr83
%Europe/Berlin %097 %2005, 03:20
Hallo,

Ik teken met actionscript een simple vierkantje die ik fill met een rode kleur (dus een rood vierkantje met een zwarte border), vervolgens na verloop van tijd wil is de kleur wijzigen en dit doe ik dan met de functie setRGB() alleen het probleem is dat dan mijn zwarte border weg is.
Wat is hier de beste oplossing voor ?, Moet is elke keer weer een nieuwe border er overheen tekenen ?, Heeft actionscript hier andere functionaliteiten voor ?

TheDutch
%Europe/Berlin %219 %2005, 06:15
Zorg dat het rode gedeelte een aparte MovieClip is en spreek die op die manier aan met setRGB() :).

Dauntless
%Europe/Berlin %276 %2005, 07:37
Iemand vroeg het me een paar weken geleden ook
function drawRectangle():Void
{
var mc:MovieClip = root.createEmptyMovieClip("square", depth++);

var solid:MovieClip = mc.createEmptyMovieClip("solid", depth++);
var outLine:MovieClip = mc.createEmptyMovieClip("outLine", depth++);
mc._x = Stage.width / 2;

//border maken
outLine.lineStyle(2, 0x000000, 100);
outLine.lineTo(100, 0);
outLine.lineTo(100, 100);
outLine.lineTo(0, 100);
outLine.lineTo(0, 0);

//opvullen
solid.beginFill(0xFFFFFF);
solid.lineStyle(0.1, 0x000000, 100);
solid.lineTo(100, 0);
solid.lineTo(100, 100);
solid.lineTo(0, 100);
solid.lineTo(0, 0);
solid.endFill();

}
function drawColorChooser():Void
{
for(var i = 0; i<colors.length; i++){
var mc:MovieClip = root.createEmptyMovieClip(colors[i][0], depth++);
mc._y = i * spacing;
mc._x = 0;

//opvullen
mc.beginFill(colors[i][1]);
mc.lineStyle(2, 0x000000, 100);
mc.lineTo(50, 0);
mc.lineTo(50, 50);
mc.lineTo(0, 50);
mc.lineTo(0, 0);
mc.endFill();
mc.i = i;
mc.onRelease = function(){
changeColor(this.i);
}
}
}
function changeColor(i):Void
{
var myColor = new Color(root.square.solid).setRGB(colors[i][1]);
}
var depth:Number = 0;
var spacing:Number = 100;
var colors:Array = new Array(["Green", 0x00FF00], ["Red", 0xFF0000], ["Blue", 0x0000FF]);
var root:MovieClip = this;
drawRectangle();
drawColorChooser();

pgr83
%Europe/Berlin %559 %2005, 14:26
Thx, oplossing was niet zo moeilijk te maken, khad alleen gedacht dat flash een ondersteuning hiervoor zou hebben (._border = true;) ofzo.....