请问一下,怎么使用flash/flex切换输入法?或者打开软键盘
请教一下,如何使用flash/flex切换输入法?或者打开软键盘?
因为开发的是一个全屏的flash展示程序,系统需要有查询功能,请教如何使用程序代码切换输入法?或者打开软键盘?
我有试过:fscommand("exec","C:\\Windows\\system32\\Osk.exe");
但是没有任何反应...
------解决方案--------------------
ActionScript 3.0 编程
上一页 下一页
客户端系统环境 > 使用 IME 类
使用 IME 类
通过使用 IME 类,您可以在 Flash Player 中运用操作系统的 IME。
使用 ActionScript 可以确定以下内容:
* 用户的计算机上是否安装了 IME (Capabilities.hasIME)
* 用户计算机上是否启用了 IME (IME.enabled)
* 当前 IME 使用的转换模式 (IME.conversionMode)
可以使用特定 IME 上下文关联输入文本字段。在输入字段之间切换时,还可以在平假名(日文)、全角数字、半角数字、直接输入等之间切换 IME。
利用 IME,用户可键入多字节语言(例如中文、日文和韩文)的非 ASCII 文本字符。
有关使用 IME 的详细信息,请参阅要为其开发应用程序的操作系统的文档。要获取其它资源,请参阅以下 Web 站点:
* http://www.microsoft.com/globaldev/default.mspx
* http://developer.apple.com/documentation/
* http://java.sun.com/
注意
如果用户计算机上 IME 未处于活动状态,则调用 IME 方法或属性(除 Capabilities.hasIME 之外)将失败。一旦手动激活 IME,随后对 IME 方法和属性的 ActionScript 调用即会正常运行。例如,如果使用日文 IME,则必须在调用任何 IME 方法或属性之前将它激活。
子主题
查看是否已安装并启用了 IME
确定当前启用的是哪种 IME 转换模式
设置 IME 转换模式
为特定文本字段禁用 IME
侦听 IME 合成事件
查看是否已安装并启用了 IME
调用任何 IME 方法或属性之前,应始终检查用户计算机上当前是否已安装并启用 IME。以下代码说明了在调用任何方法之前如何检查用户是否安装并启用了 IME:
if (Capabilities.hasIME)
{
if (IME.enabled)
{
trace("IME is installed and enabled.");
}
else
{
trace("IME is installed but not enabled.Please enable your IME and try again.");
}
}
else
{
trace("IME is not installed.Please install an IME and try again.");
}
上面的代码先使用 Capabilities.hasIME 属性检查用户是否安装了 IME。如果将该属性设置为 true,则代码使用 IME.enabled 属性检查用户当前是否已启用了 IME。
确定当前启用的是哪种 IME 转换模式
构建多语言应用程序时,您可能需要确定用户当前启用的是哪种 IME 转换模式。以下代码说明了如何检查用户是否安装了 IME,以及在安装 IME 的情况下当前启用的是哪种 IME 转换模式:
if (Capabilities.hasIME)
{
switch (IME.conversionMode)
{
case IMEConversionMode.ALPHANUMERIC_FULL:
tf.text = "Current conversion mode is alphanumeric (full-width).";
break;
case IMEConversionMode.ALPHANUMERIC_HALF:
tf.text = "Current conversion mode is alphanumeric (half-width).";
break;
case IMEConversionMode.CHINESE:
tf.text = "Current conversion mode is Chinese.";
break;
case IMEConversionMode.JAPANESE_HIRAGANA:
tf.text = "Current conversion mode is Japananese Hiragana.";
break;
case IMEConversionMode.JAPANESE_KATAKANA_FULL:
tf.text = "Current conversion mode is Japanese Katakana (full-width).";
break;
case IMEConversionMode.JAPANESE_KATAKANA_HALF:
tf.text = "Current conversion mode is Japanese Katakana (half-width).";
break;
case IMEConversionMode.KOREAN:
tf.text = "Current conversion mode is Korean.";
break;
default:
tf.text = "Current conversion mode is " + IME.conversionMode + ".";
break;
}
}
else
{
tf.text = "Please install an IME and try again.";
}
上面的代码先检查用户是否安装了 IME。接下来,该代码通过将 IME.conversionMode 属性与 IMEConversionMode 类中的每个常量进行比较,检查当前 IME 使用的是哪种转换模式。
设置 IME 转换模式
更改用户的 IME 的转换模式时,您需要确保将代码封装在 try..catch 块中,因为使用 conversionMode 属性设置转换模式时,如果 IME 不能设置转换模式,则可能会引发错误。以下代码说明了在设置 IME.conversionMode 属性时如何使用 try..catch 块:
var statusText:TextField = new TextField;
statusText.autoSize = TextFieldAutoSize.LEFT;
addChild(statusText);
if (Capabilities.hasIME)
{
try
{
IME.enabled = true;
因为开发的是一个全屏的flash展示程序,系统需要有查询功能,请教如何使用程序代码切换输入法?或者打开软键盘?
我有试过:fscommand("exec","C:\\Windows\\system32\\Osk.exe");
但是没有任何反应...
------解决方案--------------------
ActionScript 3.0 编程
上一页 下一页
客户端系统环境 > 使用 IME 类
使用 IME 类
通过使用 IME 类,您可以在 Flash Player 中运用操作系统的 IME。
使用 ActionScript 可以确定以下内容:
* 用户的计算机上是否安装了 IME (Capabilities.hasIME)
* 用户计算机上是否启用了 IME (IME.enabled)
* 当前 IME 使用的转换模式 (IME.conversionMode)
可以使用特定 IME 上下文关联输入文本字段。在输入字段之间切换时,还可以在平假名(日文)、全角数字、半角数字、直接输入等之间切换 IME。
利用 IME,用户可键入多字节语言(例如中文、日文和韩文)的非 ASCII 文本字符。
有关使用 IME 的详细信息,请参阅要为其开发应用程序的操作系统的文档。要获取其它资源,请参阅以下 Web 站点:
* http://www.microsoft.com/globaldev/default.mspx
* http://developer.apple.com/documentation/
* http://java.sun.com/
注意
如果用户计算机上 IME 未处于活动状态,则调用 IME 方法或属性(除 Capabilities.hasIME 之外)将失败。一旦手动激活 IME,随后对 IME 方法和属性的 ActionScript 调用即会正常运行。例如,如果使用日文 IME,则必须在调用任何 IME 方法或属性之前将它激活。
子主题
查看是否已安装并启用了 IME
确定当前启用的是哪种 IME 转换模式
设置 IME 转换模式
为特定文本字段禁用 IME
侦听 IME 合成事件
查看是否已安装并启用了 IME
调用任何 IME 方法或属性之前,应始终检查用户计算机上当前是否已安装并启用 IME。以下代码说明了在调用任何方法之前如何检查用户是否安装并启用了 IME:
if (Capabilities.hasIME)
{
if (IME.enabled)
{
trace("IME is installed and enabled.");
}
else
{
trace("IME is installed but not enabled.Please enable your IME and try again.");
}
}
else
{
trace("IME is not installed.Please install an IME and try again.");
}
上面的代码先使用 Capabilities.hasIME 属性检查用户是否安装了 IME。如果将该属性设置为 true,则代码使用 IME.enabled 属性检查用户当前是否已启用了 IME。
确定当前启用的是哪种 IME 转换模式
构建多语言应用程序时,您可能需要确定用户当前启用的是哪种 IME 转换模式。以下代码说明了如何检查用户是否安装了 IME,以及在安装 IME 的情况下当前启用的是哪种 IME 转换模式:
if (Capabilities.hasIME)
{
switch (IME.conversionMode)
{
case IMEConversionMode.ALPHANUMERIC_FULL:
tf.text = "Current conversion mode is alphanumeric (full-width).";
break;
case IMEConversionMode.ALPHANUMERIC_HALF:
tf.text = "Current conversion mode is alphanumeric (half-width).";
break;
case IMEConversionMode.CHINESE:
tf.text = "Current conversion mode is Chinese.";
break;
case IMEConversionMode.JAPANESE_HIRAGANA:
tf.text = "Current conversion mode is Japananese Hiragana.";
break;
case IMEConversionMode.JAPANESE_KATAKANA_FULL:
tf.text = "Current conversion mode is Japanese Katakana (full-width).";
break;
case IMEConversionMode.JAPANESE_KATAKANA_HALF:
tf.text = "Current conversion mode is Japanese Katakana (half-width).";
break;
case IMEConversionMode.KOREAN:
tf.text = "Current conversion mode is Korean.";
break;
default:
tf.text = "Current conversion mode is " + IME.conversionMode + ".";
break;
}
}
else
{
tf.text = "Please install an IME and try again.";
}
上面的代码先检查用户是否安装了 IME。接下来,该代码通过将 IME.conversionMode 属性与 IMEConversionMode 类中的每个常量进行比较,检查当前 IME 使用的是哪种转换模式。
设置 IME 转换模式
更改用户的 IME 的转换模式时,您需要确保将代码封装在 try..catch 块中,因为使用 conversionMode 属性设置转换模式时,如果 IME 不能设置转换模式,则可能会引发错误。以下代码说明了在设置 IME.conversionMode 属性时如何使用 try..catch 块:
var statusText:TextField = new TextField;
statusText.autoSize = TextFieldAutoSize.LEFT;
addChild(statusText);
if (Capabilities.hasIME)
{
try
{
IME.enabled = true;