C#关于调用屏蔽输入法,高手请进!

睡神在睡觉 2008-12-09 02:16:47
操作系统:wince5.0/Mobile 5

1.如何调用输入法?似乎windows下的方法不行啊,请教下如何调用系统默认输入法和指定输入法?如何来切换输入法?

2.如何屏蔽输入法?譬如有些控件是自动调用了输入法,但是我不需要它弹出输入法来,怎样来屏蔽?

请教各位高手了,谢谢!
...全文
773 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhushoudong 2010-12-07
  • 打赏
  • 举报
回复
顶了 最近我也在涉及这方面的
wxm4585 2008-12-09
  • 打赏
  • 举报
回复
Example:
//汉王手写的guid
private static Guid hwGuid = new Guid("{42429667-ae04-11d0-a4f8-00aa00a749b9}");
/// <summary>
/// 设置输入法为软键盘
/// </summary>
internal static void SetSoftKeyBoard()
{
SipSetCurrentIM(softKeyBoardGuid.ToByteArray());
}
ylqmf 2008-12-09
  • 打赏
  • 举报
回复
wince???偶只是听说过
wxm4585 2008-12-09
  • 打赏
  • 举报
回复
先获取当前所有系统输入法对应的guid,
参见如下api的调用
[DllImport("coredll.dll", CharSet = CharSet.Auto)]
private static extern bool SipShowIM(long flags);

[DllImport("coredll.dll", CharSet = CharSet.Auto)]
private static extern bool SipGetCurrentIM(out Guid guid);

[DllImport("coredll.dll", CharSet = CharSet.Auto)]
private static extern bool SipSetCurrentIM(byte[] guidArray);

[DllImport("coredll.dll", CharSet = CharSet.Auto)]
private static extern bool SipGetInfo(out SIPINFO sipInfo);

在wince5.0和mobile5.0上测试通过
睡神在睡觉 2008-12-09
  • 打赏
  • 举报
回复
真的没人做wince么?怎么来实现啊?不够可以再加分啊!!
睡神在睡觉 2008-12-09
  • 打赏
  • 举报
回复
自己再顶个。。。。。
睡神在睡觉 2008-12-09
  • 打赏
  • 举报
回复
我不知道怎么来把切图弄上来,但是我建的C#只能设备项目里textBox控件确实是没有IMEMode属性,不知道怎么办
周公 2008-12-09
  • 打赏
  • 举报
回复
IME 是一个程序,它使用户能够通过使用标准键盘输入复杂字符和符号,如日语汉字字符。对于仅用于输入数值的 TextBox 控件,ImeMode 属性通常设置为 ImeMode.Off。对于 Form 类,ImeMode 属性值设置为 ImeMode.NoControl。
周公 2008-12-09
  • 打赏
  • 举报
回复
WinForm下的输入控件都有IMEMode属性,用来设置控件的输入法编辑器 (IME) 模式。 不需要输入法的时候设置为Disable,这样,用户将只能在该特定文本框中输入 ASCII 字符。
周公 2008-12-09
  • 打赏
  • 举报
回复
通过 ImeMode 属性显示亚洲字符
窗体和控件可以使用 ImeMode 属性来强制对输入法编辑器 (IME) 使用特定模式。IME 是编写中文、日文和朝鲜语脚本的基本组件,因为这些编写系统所具有的字符多于可以为常规键盘编码的字符。例如,您可能想要在特定文本框中只允许 ASCII 字符。在这种情况下,可以将 ImeMode 属性设置为 Disable,这样,用户将只能在该特定文本框中输入 ASCII 字符。ImeMode 属性的默认值是 Inherit,因此,如果您设置窗体的属性,窗体中的所有控件都将继承该设置。
睡神在睡觉 2008-12-09
  • 打赏
  • 举报
回复
没人能给解释一下么?自己顶下
睡神在睡觉 2008-12-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xxyping 的回复:]
ImeMode里面应该有,也没仔细研究过。MARk
[/Quote]

能给详细的说说ImeMode么?好像应该可以用,怎么来找到这个函数呢?
xxyping 2008-12-09
  • 打赏
  • 举报
回复
ImeMode里面应该有,也没仔细研究过。MARk
DNN-2017 2008-12-09
  • 打赏
  • 举报
回复
up

111,131

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧