2014-07-17 23 views
1

我在尝试通过影片剪辑中的文本框(通过for循环调用)中选中标签时遇到问题,无论选择哪一个,打印选项卡将始终选择第一文本字段创建并不会从那里移动。甚至没有使用Tab键索引工作AS3 - 不能通过嵌套在Movieclips中的文本框选项卡

这里的影片剪辑中的代码(该文本框是物理对象)

import flash.text.TextField; 
import flash.events.FocusEvent; 
import fl.managers.FocusManager; 
import flash.events.Event; 

var str:String = "Default"; 

textf.text = str; 
textf.textColor = 0x848484; 
hlborder.visible = false; 

var focusManager:FocusManager = new FocusManager(this); 

textf.addEventListener(FocusEvent.FOCUS_IN, tffin); 
textf.addEventListener(FocusEvent.FOCUS_OUT, tffout); 

function tffin(e:Event):void{ 
    textf.borderColor = 0x0066FF; 
    hlborder.visible = true; 
    if(textf.text == str){ 
     textf.text = ""; 
    } 
} 

function tffout(e:Event):void{ 
    textf.borderColor = 0x000000; 
    hlborder.visible = false; 
    if(textf.text == ""){ 
     textf.text = str; 
    } 
} 

在此处,将它们添加到主时间轴

var carr:Array = new Array(); 
for(var i = 0; i<10; i++){ 
    carr.push(new custField()); 
    carr[i].y = i*30; 
    carr[i].x = 30; 
    addChild(carr[i]); 
    carr[i].textf.tabIndex = i; 
} 

回答

0

您是否尝试过将每个TextField放在单独的动画片段中?我认为这应该很有可能解决这个问题。

+1

我正在尝试使用此应用程序的模块化方法。因此,从技术上讲,它们是独立的影片剪辑,因为它们每个都有一个单独的实例,但它们都是脱离库中同一对象的实例,通过数组引用。 –

0

同样的问题。我有3个TextFields和单个TextFields的MovieClip。帮助这个:

  1. 删除所有tabIndex
  2. 坐落在影片剪辑tabChildren = true

现在标签从左至右,从上到下,甚至扔孩子的TextField去。