Как предупредить пользователя о включении CAPS LOCK во Flex / AIR? - PullRequest
8 голосов
/ 18 декабря 2008

Как и на экране входа в XP, во Flex 3 как отобразить предупреждение для пользователя в текстовом поле о том, что клавиша CAPS LOCK включена?

Ответы [ 3 ]

5 голосов
/ 18 декабря 2008

flash.ui.Keyboard.capsLock не привязывается, так что код на самом деле не будет работать.

Я бы вызвал функцию в событии «keyDown» для TextInput, а затем проверил бы flash.ui.Keyboard.capsLock в этой функции. Затем вы можете установить visible / includeInLayout для этого текста, всплывающее уведомление и т. Д. *

3 голосов
/ 23 марта 2011

попробуйте

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;   
     }
}

вызовите addHandler после завершения создания

1 голос
/ 18 декабря 2008

В коде actionScript:


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

или 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>

...