PDA

Volledige versie bekijken : Gegenereerde SimpleButton werkt niet


Netraam
%Europe/Berlin %015 %2009, 00:22
Hoi,

Ik heb een SimpleButton gegenereerd in as3 maar hij werkt niet. Hij pakt nog de handcursor, noch dat eventlistener. Wat is er fout?

private function setDoor() : void
{
var button : SimpleButton = new SimpleButton;
button.upState = colorButton();
button.trackAsMenu = true;
button.useHandCursor = true;
button.addEventListener(MouseEvent.CLICK, nextCase);
addChild(button);
}

private function colorButton() : Shape
{
var rect : Shape = new Shape;
rect.graphics.beginFill(0xffffff);
rect.graphics.drawRect(481, 120, 116, 227);
return rect;
}

Jan
%Europe/Berlin %552 %2011, 14:14
If you do not set the hitTestState property, the SimpleButton is inactive — it does not respond to user input events.
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/SimpleButton.html#hitTestState

Ivm je tekenen:
rect.graphics.drawRect(481, 120, 116, 227);
In plaats van te beginnen tekenen binnen die graphics op positie x=481 en y=120 begin je gewoonlijk op (0,0) en zet je na het tekenen de shape op een positie. Met bovenstaande code is je button 597(481+116) pixels breed ipv 116 en 347(120+227) pixels hoog ipv 227. Maar misschien was het bewust de bedoelig om het zo te doen ipv van zo:
rect.graphics.drawRect(0, 0, 116, 227);
button.x = 481;
button.y = 227;


Verder ook je kleur:

rect.graphics.beginFill(0xffffff);
Ik ken de kleur van de achtergrond niet, maar die is standaard wit(0xFFFFFF) en je tekent ook in het wit.

Jan