Flex ActionScript – ActionScript Inline, code dans un tag MXML
L'ActionScript Inline apparait dans les tags MXML. L'exemple suivant utilise de l'AS3 pour afficher une boîte de dialogue Alert quand l'utilisateur clique sur un bouton.
<mx:Button id="alertButton" label="Show Alert"
click="mx.controls.Alert.show('Example')"/>
Dans cet exemple, le texte assigné à l'attribut "click" est du code ActionScript, qui appelle la méthode show() d'une classe ActionScript appelée Alert.
L'exemple suivant utilise le data binding:
<mx:VBox>
<mx:TextInput id="input"/>
<mx:Text id="output" text="{input.text}"/>
</mx:VBox>
Cet exemple utilise l'expression ActionScript input.text pour évaluer la propriété text de l'objet input (le TextInput). Le data binding en inline représente l'utilisation la plus limitée d'ActionScript car elle ne peut évaluer qu'une expression. Par exemple, l'exemple précédent évalue l'expression input.text. Vous pourriez utiliser une expression plus complexe, comme la suivante:
<mx:VBox>
<mx:TextInput id="input"/>
<mx:Text id="output" text="{'User Input: ' + input.text}"/>
</mx:VBox>
Cet exemple concatène la chaîne 'User Input' avec ce qu'a rentré l'utilisateur dans le champ de saisie. Vous pouvez aussi créer des expressions bien plus complexes en utilisant le data binding.
Les handlers d'évènement quant à eux vous permettent d'écrire du code ActionScript plus complexe qui peut contenir plusieurs instructions. Les instructions AS3 sont généralement terminées par ";". L'exemple suivant utilise un bouton dont l'event handler consiste en deux expressions:
<mx:Button id="alertButton" label="Show Alert"
click="alertButton.label = 'Nouveau Label';mx.controls.Alert.show('Exemple');"/>
Cet exemple change le label du Button puis affiche une Alert. Bien que vous puissiez assemblez plusieurs instructions ensemble comme dans cet exemple, on utilise peu cette technique. Il n'est pas difficile de comprendre pourquoi: le code devient difficile à lire et à gérer. Si un event handler a besoin d'appeler plusieurs instructions, il est plus commun de lui faire appeler une fonction.
Articles similaires
- Flex ToolTip – Ajouter des ToolTips à vos composants
- Flex Localization – Utilisation des Resource Bundles avec le ResourceManager
- Flex ActionScript – ActionScript Nested et blocs mx:Script
- Flex Validator: Déclencher la validation en MXML et ActionScript
- DataFilterLib – Using the DataFilterLib with ActionScript code only





