`

焦点从Flash切换到HTML的输入框中不能输入中文的解决办法

    博客分类:
  • Flex
 
阅读更多

当焦点置于Flash后再切换到HTML元素中,如HTML的INPUT输入框中,不管怎么切换我们的输入法,中文就是输不出来。不要着急。
可以使用flash.system.Capabilities类来解决。
我们只需用到它的一个属性,就是查看系统的输入法 Capabilities.hasIME :[只读] 指定系统是否安装了输入法编辑器 (IME),如果是,则为 true,否则为 false。
使用IME类,您可以在客户端计算机上运行的Flash运行时应用程序中直接对操作系统的输入法编辑器 (IME) 进行操作。可以确定是否安装了IME、当前是否启用了IME以及启用了哪个IME。您可以在应用程序中禁用或启用IME,并且可以执行其他受限制的函数,具体取决于操作系统。
当我们焦点进入到Flash时 我们的IME.enabled属性直接被Flash禁用,值变为False 这也就是当我们为什么焦点放在HTML的元素中,切换输入法就是不管用的原因。既然找到原因了。那么我们动手解决吧
首先对Flash主程序监听MouseEvent.ROLL_OUT事件。当鼠标离开显示对象区域或任何其子级区域并转到除其子级以外的对象时,显示对象分派rollOut事件。当我们的光标离开Flash时我们手动设置输入法开启。代码如下:

?View Code AS3
FlexGlobals.topLevelApplication.addEventListener(MouseEvent.ROLL_OUT, setSRF);
/**
 * 当光标离开Flash时开启设置系统的输入法
* */
private function setSRF(event:MouseEvent):void
{
	if(Capabilities.hasIME)
	{
		try
		{
			if(!IME.enabled)
			{
				IME.enabled=true;
			}
			IME.conversionMode=IMEConversionMode.CHINESE;
		}
		catch(error:Error)
		{
		}
	}
}
来源:http://www.pilihou.com/archives/365
分享到:
评论

相关推荐

    傲游浏览器3(Maxthon) 3.1.8.1000 正式版

    无法在某些Flash中输入中文. 某些网页会无故跳转到手机版. Trident核心 某些网页上的操作会导致无故多开一个页面. 用户界面 WindowsXP系统下启动浏览器侧边栏显示异常. 选项 不自动登录账户的情况下,登录账户后,"只...

    超实用的jQuery代码段

    超实用的jQuery代码段精选近350个jQuery代码段,涵盖页面开发中绝大多数要点、技巧与方法,堪称史上最实用的jQuery代码参考书,可以视为网页设计与网站建设人员的好帮手。《超实用的jQuery代码段》的代码跨平台、跨...

    《程序天下:JavaScript实例自学手册》光盘源码

    3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19...

    程序天下:JavaScript实例自学手册

    3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19...

    JQuery&CSS;&CSS;+DIV实例大全.rar

    5.jQuery实现flash动感切换选项卡TAB插件示例 6.jquery制作自动播放的TAB切换特效 7.基于jQuery简单的Tab滑动门菜单代码(jQuery MoveTab) 8.简单jquery选项卡插件下载(支持鼠标移上切换、点击切换、Ajax方式...

    Avant Browser 多语言版 2010 build 120

    [修复]从其他应用程序切换回来时,用Ctrl+N可能无法使地址栏获得焦点 下载地址: 安装版:http://www.avantbrowser.com/release/abcn.exe 便携版: http://www.avantbrowser.com/release/AvantChs.exe 多国...

    C#程序开发范例宝典(第2版).part13

    实例080 将XML文件节点绑定到TreeView控件中 106 2.8 DataGridView控件应用 108 实例081 DataGridView控件的分页功能 108 实例082 从DataGridView控件拖放数据至TreeView控件 113 实例083 在DataGridView控件中...

    C#程序开发范例宝典(第2版).part08

    实例080 将XML文件节点绑定到TreeView控件中 106 2.8 DataGridView控件应用 108 实例081 DataGridView控件的分页功能 108 实例082 从DataGridView控件拖放数据至TreeView控件 113 实例083 在DataGridView控件中...

    C#程序开发范例宝典(第2版).part02

    实例080 将XML文件节点绑定到TreeView控件中 106 2.8 DataGridView控件应用 108 实例081 DataGridView控件的分页功能 108 实例082 从DataGridView控件拖放数据至TreeView控件 113 实例083 在DataGridView控件中...

    C#程序开发范例宝典(第2版).part12

    实例080 将XML文件节点绑定到TreeView控件中 106 2.8 DataGridView控件应用 108 实例081 DataGridView控件的分页功能 108 实例082 从DataGridView控件拖放数据至TreeView控件 113 实例083 在DataGridView控件中...

Global site tag (gtag.js) - Google Analytics