Je travaille sur un projet dans Flash en utilisant Action Script 3.0. J'ai converti un graphique en un bouton afin de pouvoir l'utiliser pour divers boutons tout au long de mon projet, mais je n'arrive pas à comprendre comment modifier uniquement l'instance du nouveau bouton sur la scène sans modifier la classe entière. Par exemple, si mon premier bouton a un nom d'occurrence unique et s'appelle "Click Me" et que je tire une autre instance de ce bouton sur la scène et que j'essaie de lui donner un nouveau nom d'instance puis de le réécrire modifie automatiquement le bouton "Click Me" pour dire "Next" également. Quelqu'un peut-il m'aider pour que je n'aie pas besoin de créer une nouvelle classe pour chaque bouton que je crée?Modifier un bouton dans Action Script 3.0
Répondre
Ce comportement est normal. Le bouton que vous créez dans votre bibliothèque n'est pas une instance. Lorsque vous le faites glisser sur la scène, vous créez l'instance, mais si vous changez quelque chose, par exemple en remplaçant un champ de texte, vous changez la classe.
Une façon d'obtenir ce que vous voulez est de créer un MovieClip au lieu d'un bouton. Puis dans votre MovieClip ajouter un champ de texte dynamique à l'intérieur. Sur toutes vos instances MovieClip (assurez-vous qu'il a un nom si votre glisser de la bibliothèque à l'étape), ajoutez le code suivant:
myBtn1.buttonMode = true;
myBtn2.buttonMode = true;
Maintenant, pour chaque instance que vous pouvez changer le champ de texte en faisant cela en supposant que le champ de texte dynamique à l'intérieur le clip est appelé txtLabel:
myBtn1.txtLabel.text = "hello";
myBtn2.txtLabel.text = "world";
Si vous voulez rouler sur les états alors vous pouvez le faire, tout d'abord ajouter une image clé pour chaque état dans le MovieClip, faites sur une couche séparée underthe textfield et leur donner une étiquette d'image pour chaque section:
myBtn1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver)
function onMouseOver(e:MouseEvent)
{
myBtn1.gotoAndStop("OVER_STATE");
//can use e.target.gotoAndStop("OVER_STATE") instead so that you can reuse the one
//function for all buttons. The above is just to illustrate the point.
}
Alternativement, il peut être possible de simplement étendre la classe SimpleButton, puis d'ajouter une propriété pour modifier un champ de texte dynamique que vous créez à l'intérieur.
- 1. Modifier une action dans TableView sans bouton Modifier?
- 2. Modifier la couleur d'un bouton dans une action contextuelle standard
- 3. Vérifier si un élément existe dans Action Script
- 4. WM_GETTEXT bouton action
- 5. Fonction d'attente Action Script 2.0
- 6. Java par défaut formulaire action ou un bouton
- 7. Flex: Modifier une icône intégrée et l'utiliser dans un bouton?
- 8. Comment modifier un bouton, onclick, dans ActionScript? Montrer/cacher?
- 9. Action multiple pour le script Loadrunner?
- 10. Lorsque le bouton d'entrée est cliqué, effectuer une action
- 11. VSTO 3.0 Obtenir/modifier une connexion de classeur Excel 2007
- 12. Action Script Prototypes et création de fonction dynamique
- 13. Effectuer une action de bouton à fréquence variable
- 14. mysql query browser modifier le bouton désactivé
- 15. Comment exécuter un script dans WiX avec une action personnalisée - exemple le plus simple possible?
- 16. Comment aller à l'URL une fois que le bouton bitmap img sur Flash est cliqué - Action Script
- 17. Modifier le bouton de fermeture Titlewindow
- 18. iPhone: Modifier le graphique du bouton personnalisé
- 19. Invoquer une action sur SQL Server 2000 Modifier la table
- 20. Script pour modifier les perspectives (2003) contacts
- 21. Modifier le contexte d'exécution du script Javascript
- 22. Comment modifier le script d'exécution Eclipse dans QNX6?
- 23. Comment modifier le contenu d'IDictionary en utilisant LINQ (C# 3.0)
- 24. Est-ce que quelqu'un sait plus Shorthand Action Script 3?
- 25. Action Link_to dans un contrôleur imbriqué?
- 26. action écoutant un JFrame
- 27. Comment vider un tableau dans Axapta 3.0?
- 28. tout le script est en cours d'exécution avant le chargement des images. En action Script 2.0
- 29. Comment savoir la version de Flash Player à partir d'Action Script 3.0
- 30. Modifier les propriétés d'un bouton ASP en fonction des données liées dans un GridView?