Actionscript 3 弹出窗口打开后,Flex在textInput中丢失光标

Actionscript 3 弹出窗口打开后,Flex在textInput中丢失光标,actionscript-3,apache-flex,Actionscript 3,Apache Flex,当我开始键入文本输入时,打开一个弹出窗口,当它打开时,文本输入中的光标消失。用鼠标单击文本输入似乎可以恢复光标,这就是为什么我通过调度MouseEvent.CLICK来解决这个问题 有没有更干净的方法来处理光标的消失 编辑:代码如下所示: <s:PopUpAnchor id="popUp" displayPopUp="false"/> <s:TextInput id="inputTxt" /> inputTxt.addEventListener(KeyboardEv

当我开始键入文本输入时,打开一个弹出窗口,当它打开时,文本输入中的光标消失。用鼠标单击文本输入似乎可以恢复光标,这就是为什么我通过调度MouseEvent.CLICK来解决这个问题

有没有更干净的方法来处理光标的消失

编辑:代码如下所示:

<s:PopUpAnchor id="popUp"  displayPopUp="false"/>
<s:TextInput id="inputTxt" />


inputTxt.addEventListener(KeyboardEvent.KEY_DOWN, onInputFieldKeyDown);

private funcition onInputFieldKeyDown(event:KeyboardEvent):void {
   if (!popUp.displayPopUp){
      popUp.displayPopUp = true;
   }

   inputTxt.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}

Inputxt.addEventListener(KeyboardEvent.KEY_DOWN,onInputFieldKeyDown);
私有函数onInputFieldKeyDown(事件:KeyboardEvent):无效{
如果(!popUp.displayPopUp){
popUp.displayPopUp=true;
}
inputxt.dispatchEvent(新建MouseEvent(MouseEvent.CLICK));
}
尝试使用

tabFocusEnabled="false"

对于你的s:PopUpAnchor

实际上,我在Adobe的论坛上发现了同样的问题:发布它的人也注意到,鼠标点击输入后,光标重新出现。因此,我认为一次性发送鼠标事件是可以接受的解决方法。

如果您可以发布代码,请发送。谢谢。一个弹出窗口会将焦点从文本字段中移开,这就是光标消失的原因。如果文本字段具有焦点,请尝试不打开弹出窗口。添加了代码示例@Vesper-文本输入仍然具有焦点,例如,我可以继续在其中键入,但光标丢失。你知道为什么吗?