要想使Flex按回车键焦点移动到下一个组件,只要在页面初始化的时候加上以下方法就行
/**页面初始化完毕后执行的方法*/
protected function windowedapplication1_creationCompleteHandler(event:FlexEvent):void
{
this.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDown);
}
private function myKeyDown(evt:KeyboardEvent):void
{
//目前焦点所在的组件全类名
var classname:String = flash.utils.getQualifiedClassName(focusManager.getFocus());
//回车不执行焦点移动的组件
var classArr:Array = ["spark.components::TextArea"];
//获取按键的代码
var keyCode:String=evt.charCode.toString();
if(keyCode=="13" ){
if(classArr.indexOf(classname) >= 0){
return ;
}
//焦点移动到下一个组件
focusManager.getNextFocusManagerComponent().setFocus();
}
}