如何获得前一个焦点并比较字符串

时间:2011-10-24 00:11:07

标签: flash actionscript-3 actionscript flash-cs4

如何获得前一个焦点/能够比较字符串?

2 个答案:

答案 0 :(得分:1)

您需要倾听FocusEvent.FOCUS_OUT事件;您可以在documentation中了解更多信息。

但严重的是,您应该首先学习基本的repetition constructs like a loop。没有人应该永远有两个看起来像这样的数组; - )

答案 1 :(得分:1)

FocusEvent.FOCUS_IN事件还包含对失去焦点的交互式对象的引用(relatedObject属性)。

在您的代码中,您可以更改:

textbox[i].addEventListener(KeyboardEvent.KEY_UP, k);
textbox[i].tabIndex= i; 

为:

textbox[i].addEventListener(KeyboardEvent.KEY_UP, k);
textbox[i].addEventListener(FocusEvent.FOCUS_IN, handleFocusIn);
textbox[i].tabIndex= i; 

function handleFocusIn(anEvent: FocusEvent): void
{
  if (anEvent.relatedObject is TextField)
  {
     var previousBox: TextField = anEvent.relatedObject as TextField;
     var currentBox: TextField = anEvent.target as TextField;
     // etc.
  }
}

像之前的回答一样,试着弄清楚循环是如何工作的。您也可以使用[]:

引用TextField
// to reference names_mc.box19_txt using an index
var index: int = 19;
var textbox: TextField = names_mc['box' + index + '_txt'];