Flash 聚焦输入/输出问题-按钮未聚焦
当我按下警报框的*OK按钮时,我希望txtOther.textbox处于焦点位置。 此处,当显示警报框时,txtbox会聚焦,当我按下文本框的OK按钮时,txtOther.textbox不会聚焦Flash 聚焦输入/输出问题-按钮未聚焦,flash,apache-flex,actionscript,alert,setfocus,Flash,Apache Flex,Actionscript,Alert,Setfocus,当我按下警报框的*OK按钮时,我希望txtOther.textbox处于焦点位置。 此处,当显示警报框时,txtbox会聚焦,当我按下文本框的OK按钮时,txtOther.textbox不会聚焦 MXML SCRIPT: <mx:Canvas id ="parentCanvas1" label="General" > <mx:VBox id="parentBox1"> <mx:Canvas id="cvsGeneral"> <mx:TextInput
MXML SCRIPT:
<mx:Canvas id ="parentCanvas1" label="General" >
<mx:VBox id="parentBox1">
<mx:Canvas id="cvsGeneral">
<mx:TextInput id="txtOther" focusOut="txtOther_Validate();"/>
</mx:Canvas>
</mx:VBox>
</mx:Canvas>
<mx:Canvas id="parentCanvas2" >
<mx:HBox id="parentBox2" >
<mx:Button label="Save" id="btnSave" click="txtOther_Validate();" />
</mx:HBox>
</mx:Canvas>
////////////Action script////////////////////
public function txtOther_Validate(): void {
// here lets assume that the result variable is stored as "FAILURE"
if(result == "FAILURE"){
Alert.show("Please enter a valid Format Mask.");
txtOther.setFocus(); //
}
}
MXML脚本:
////////////动作脚本////////////////////
公共函数txtOther_Validate():void{
//这里让我们假设结果变量存储为“FAILURE”
如果(结果=“失败”){
显示(“请输入有效的格式掩码”);
txtOther.setFocus();//
}
}
此处即使显示警报框,也会设置txtother.textbox的焦点。但按下警报的OK按钮后,TxtOther.text框的焦点未设置。因此,这里我想在按下警报窗口的OK按钮之后而不是之前触发foccus事件。如何执行…当调用Alert.show()时,将返回的警报实例存储在变量中。在该变量上,设置一个将侦听自定义事件的事件侦听器。该事件处理程序的目的是将焦点设置在txtOther上
以下是一些代码片段:
private var alert:Alert = Alert.show(blah);
alert.addEventListener(mx.events.FlexEvent.REMOVE, removeHandler, false, 0, true);
private function removeHandler(event:FlexEvent):void
{
txtOther.setFocus();
}
调用Alert.show()时,将返回的警报实例存储在变量中。在该变量上,设置一个将侦听自定义事件的事件侦听器。该事件处理程序的目的是将焦点设置在txtOther上
以下是一些代码片段:
private var alert:Alert = Alert.show(blah);
alert.addEventListener(mx.events.FlexEvent.REMOVE, removeHandler, false, 0, true);
private function removeHandler(event:FlexEvent):void
{
txtOther.setFocus();
}
正常警报的设置我把警报设置为这样
Alert.show("Please enter a valid Format Mask.", "Validation Error", Alert.OK, this, alrt_close);
然后我通过
private function alrt_close(evt:CloseEvent):void {
txtOther.setFocus();
这对我来说很有效。正常警报的安装我将警报设置为这样
Alert.show("Please enter a valid Format Mask.", "Validation Error", Alert.OK, this, alrt_close);
然后我通过
private function alrt_close(evt:CloseEvent):void {
txtOther.setFocus();
这对我来说效果很好。您正在对哪个TextInput的focusOut执行验证?如何创建警报框?请显示一些代码。为什么要删除此问题?以下是说明:如果您希望编辑自己的问题,。看这里:实际上这是上面链接的副本,但这里我把我的要求简化了。。因此,请不要忽略我的问题,即使警告框显示,txtother.textbox的焦点也已设置。。但按下警报的ok按钮后,TxtOther.text框的焦点未设置。。因此,在按下警报窗口的ok按钮后,我决定触发foccus事件。。如何做到这一点…好吧,如果这是我投票决定的同一个问题,作为一个完全相同的问题来结束。你在对哪个TextInput的focusOut进行验证?如何创建警报框?请显示一些代码。为什么要删除此问题?以下是说明:如果您希望编辑自己的问题,。看这里:实际上这是上面链接的副本,但这里我把我的要求简化了。。因此,请不要忽略我的问题,即使警告框显示,txtother.textbox的焦点也已设置。。但按下警报的ok按钮后,TxtOther.text框的焦点未设置。。因此,在按下警报窗口的ok按钮后,我决定触发foccus事件。。如何做到这一点…好吧,如果这是我投票决定的同一个问题,作为一个完全重复的问题。