2009-02-18 11 views
3

J'ai besoin d'un bouton dans Flash/AS3 qui permute entre activé et désactivé. J'ai donc été heureux de voir que la classe Button a la propriété toggle qui me permet d'avoir ce comportement. J'étais moins heureux de voir que ce que je reçois quand je fais quelque chose un "bouton" dans le fichier Flash est une instance de classe SimpleButton, qui n'a pas cette option.Bouton de bascule Flash

Existe-t-il un moyen d'obtenir une instance de Button à partir du fichier .fla ou de faire en sorte que SimpleButton se comporte comme une bascule?

Répondre

6

Voilà comment je mon chemin codé ceci:

private buttonState:Boolean; 

private function buttonToggle(button:SimpleButton){ 
    var currDown:DisplayObject = button.downState; 
    button.downState = button.upState; 
    button.upState = currDown; 
    buttonState = !buttonState; 
} 

private function clickEvent(e:MouseEvent){ 
    buttonToggle(e.target); 
} 

Je ne l'ai pas mis le code dans la fonction clickEvent, parce que cela me permet de basculer le bouton d'ailleurs dans le code.

+0

beaucoup de mercis! –

+0

Désolé, im nouveau en flash. Où avez-vous mis ce code? – rvazquezglez

-1

Je pense que cela pourrait vous aider beaucoup: http://actionscriptexamples.com/2008/11/26/creating-toggle-buttons-in-flash-with-actionscript-30/

Il est actionscript seulement. Mais c'est la même chose si vous faites glisser le composant Button sur la scène et lui asignez un nom d'occurrence. De cette façon, vous pouvez y accéder à partir du script as.

+0

Je le sais, mais celui que je reçois de la scène est un SimpleButton, qui n'a pas la fonctionnalité que je veux. Merci quand même. – Sietse

1

Vous pouvez faire glisser un bouton depuis la fenêtre Composants. Est-ce ce que vous cherchez?