Flex的Web程序获取到输入焦点

每当打开网页版的Flex程序,我们需要第一个输入框获取焦点,可以直接进行输入。

但是,我们在Flex程序中设置了文本框获取焦点,却并不能直接进行输入,这不是我们期望的,这是因为在HTML中SWF文件没有获取到焦点。

对于这个问题有两个解决方案:

方案1. 采用Flex和HTML直接通信的应用程序编程接口,ExternalInterface类进行设置

  首先在flex应用程序的createComplete方法中让swf文件获取到焦点

  ExternalInterface.call("new Function('document.getElementById(\"SWF name\").focus()')"); 

  然后就可以设置flex中的具体组件获取焦点。

方案2.在FLEX的项目中的HTML模板页中进行设置

  修改Flex的html-template文件夹中的index.template.html文件

  增加HTML的onload的事件处理

  修改body标签前

  <body>

  修改后

  <body onload="document.getElementById('${swf}').focus();"> 

原文地址:https://www.cnblogs.com/bffc/p/3671468.html