键盘焦点在 ActionScript 中的文本框上

Posted

技术标签:

【中文标题】键盘焦点在 ActionScript 中的文本框上【英文标题】:Keyboard-focus on Texbox in ActionScript 【发布时间】:2015-11-12 14:29:25 【问题描述】:

我在 Flex 上制作了一个登录表单,并将焦点设置在第一个文本框上。 文本框突出显示,但我必须单击它才能在其中写入。 我怎样才能让它直接接受键盘输入而不点击?我的意思是在加载页面后直接。

<fx:Script>
    <![CDATA[   
        private function init():void 
            trace("Authentication View init");
            ExternalInterface.call('function browserFocus()document.getElementById(\'$application\').focus();');
            this.txtUsername.setFocus();
            this.txtUsername.setFocus();
        
    ]]>
</fx:Script>


<s:Panel x="353" y="164"  >
    <s:TextInput id="txtUsername" x="103" y="49" focusEnabled="true"/>
    <s:TextInput x="103" y="79"/>
    <s:Label x="26" y="49" text="Username"/>
    <s:Label x="26" y="79" text="Password"/>
</s:Panel>

【问题讨论】:

使用 FocusManager 类的 setFocus 方法:Documentation。所以在你的情况下focusmanager.setfocus(txtUsername) 它说:这一行有多个标记:-未定义属性焦点管理器的访问-1更改行 “未定义属性焦点管理器的访问” 抱歉,打错了。 focusManager 是属性的名称。 谢谢,但没用。我也面临同样的问题:( 【参考方案1】:

init()函数中设置焦点,如下所示。

txtUsername.setFocus();

并在 html 结束标记之前的 html-template/index.template.html. 内应用以下代码。

<script type="text/javascript">
        function onFlexInitialized()
        
            //alert("onFlexInitialized");

            <!-- Force the browser to set flex app with focus -->
            document.getElementById("$application").focus();
        
</script>

【讨论】:

是的,我认为这就是问题所在。但我无法将焦点放在 Flas 应用程序本身上。 @Subaiesarah 你有没有在里面设置给定的脚本。 html-template/index.template.html ?【参考方案2】:

我通过在 html-template/index.template.html 的 body 标记中添加这个来解决它。

onLoad="window.document.Login.focus();"

它工作正常。谢谢大家:)

【讨论】:

【参考方案3】:

索引模板:

<div id="flashContent">    
  <script type="text/javascript"> 

      function setFocus()
          window.document.getElementById("APPNAME").focus();
          $('#txtUsername').focus();
          $('#txtUsername').focusEnables=true;
       

  </script>  
</div>

应用:

private function init():void
  if (ExternalInterface.available) 
      ExternalInterface.call('setFocus');
   

【讨论】:

以上是关于键盘焦点在 ActionScript 中的文本框上的主要内容,如果未能解决你的问题,请参考以下文章

在 WPF 中的文本框上设置焦点

将焦点设置在 xaml wpf 中的文本框上

Java Swing(初学者):有6个文本框竖直排列和两个按钮(bt1和bt2),默认焦点在第一个文本框上。

如何在使用fancybox打开的新页面中将焦点设置在文本框上

如何设置网页的默认输入焦点?

如何将焦点设置在文本框或密码框上