2008-12-18 2 views

Répondre

5

flash.ui.Keyboard.capsLock n'est pas bindable afin que le code ne fonctionne pas vraiment.

J'appellerais une fonction dans l'événement "keyDown" pour le TextInput, puis je vérifierais flash.ui.Keyboard.capsLock dans cette fonction. Vous pouvez ensuite définir visible/includeInLayout sur ce texte, affiche une alerte, etc ...

1

en Actionscript:

 

if(flash.ui.Keyboard.capsLock){ 
    // caps lock is on... 
} 
 

ou MXML:

 

<mx:Box width="100%" id="capsbox" 
    visible="{flash.ui.Keyboard.capsLock}" 
    includeInLayout="{capsbox.visible}"> 
     <mx:Text text="Caps Lock is on." color="red" /> 
</mx:Box> 
 
+0

J'ai créé un formulaire vierge et l'a laissé tomber sur le formulaire. Cela ne fonctionne pas, même si CAPS LOCK est activé lorsque je lance l'application. Ai-je besoin d'un gestionnaire de clavier? – SkunkSpinner

3

essayer cette

private function addHandler():void{ 
     //Called from app's creation complete event. 
     //Listener to handle any keyboard KEY_DOWN event: 
     this.addEventListener(KeyboardEvent.KEY_DOWN,handleKeyDown); 
    } 


private function handleKeyDown(event:KeyboardEvent):void{ 
    if (Keyboard.capsLock){ 
      lblCaps.visible =true; 
    } else { 
      lblCaps.visible =false; 
    } 
} 

appel addHandler sur la création complète

Questions connexes