AS 3.0/ Flex

Como setar cursor e focus em campos dinâmicos

Alguém da Flex-Brasil, não me recordo agora nesse momento quem pediu, mais aqui vai uma solução de como usar a Classe CursorManager e FocusManager para setar o cursor em campos preenchidos ou não.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="setShowCursor()" layout="vertical">
   <mx:Script>
   	<![CDATA[
   	   import mx.managers.CursorManager;
 
   	   public function setShowCursor():void
   	   {
   	   		this.focusEnabled = true;
   	   		this.focusManager.showFocusIndicator = true;
   	   		this.tabEnabled = true;
   	   		this.addEventListener(FocusEvent.FOCUS_IN,clearText);
   	   		this.addEventListener(FocusEvent.FOCUS_OUT,fillOut);
   	   }
   	   public function clearText(event:FocusEvent):void
   	   {
   	   		dois.text = "";
   	   		tres.text = "";
   	   }
   	   public function fillOut(event:FocusEvent):void
   	   {
   	   		if(dois.text.length == 0)
   	   		{
   	   		dois.errorString = "Preencha corretamente";
   	   		}
 
   	   }
 
   	]]>
   </mx:Script>
 
   	<mx:TextInput id="um" text="Texto de campo 01"/>
   	<mx:TextInput id="dois" text="Texto de campo 02"/>
   	<mx:TextInput id="tres" text="Texto de campo 03"/>
</mx:Application>