在.net里面有一个类控制输入法:
具体文章请看:
http://www.yesky.com/20020108/213018.shtml
具体文章请看:
http://www.yesky.com/20020108/213018.shtml
解决方案 »
- 多线程访问数据库反而速度变慢
- C#打开一个图片不能立即显示,改变窗口的大小后才显示
- 三层架构网站的怎么发布啊!
- 在DataGridView中的问题
- 如何实现DataGrid只显示字段名?
- 本个在打包时出现-无法找到程序集“Interop.Excel.DLL”的依赖项“INTEROP.OFFICE”(签名=“(null)”版本=“2.1.0.
- 怎样将base16编码的字符串转化为base64编码的字符串?
- 谁有比较好的现成的OA产品或者源码,请与我联系
- 如何获得行号?DataRow findRow = thisDataSet.Tables["Customers"].Rows.Find("这是ID");
- MenuItem
- 请问穿过防火墙访问asp.net程序,需要设置些什么?
- 谁能介绍本C#类库的参考书?
的索引。在知道操作系统装的输入法索引时可以随便改变当前输入法,
但用户机子里的输入法索引并不知道啊还有什么更好的方法吗?
命名空间为:System.Windows.Forms具体程序中怎么做就你自己自由发挥了
命名空间为:System.Windows.Forms具体程序中怎么做就你自己自由发挥了
InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[3];你知道索引为3的输入法是什么吗?如果是你用的机子那当然知道,但如果是
任一用户的机子,那么索引为3的输入法就不一定是你想得到的输入法了。
但如果是任一个用户的机子你还能知道吗?所以就不一定会得到自己想要的
输入法,还有更好的办法吗?
要输入汉字的(比如:姓名),这些当然是用汉字啦你怎么知道默认的输入法是中文的呢?有时用户的机子里默认输入法就是
英文的啊
我最近在做录入程序,我觉得对于录入输入法的控制嘛。。
第一次输入法的切换应该由用户来进行。
当到需要切换的文本框时:
1.就模拟键盘输入(ctrl+space)。
2.或者捏,先获取e文输入法的索引。再转为e文。
提交后,比较最后一次的输入法和最开始的输入法决定是否需要切换。
说了那么多,我不知道怎么样模拟键盘输入。。也不知道怎么样获取e文输入法的。。
哪为高手写写喂。谢!
foreach(InputLanguage lang in InputLanguage.InstalledInputLanguages)
{
this.textBox1.Text += "\r\nName> "+lang.LayoutName+"\r\nCulture> "+lang.Culture.Name + "\r\n";
}
运行的结果类似:Name> Chinese (Simplified) - Microsoft Pinyin IME 3.0
Culture> zh-CNName> Chinese (Simplified) - US Keyboard
Culture> zh-CNName> Chinese (Traditional) - New Phonetic
Culture> zh-TWName> Japanese Input System (MS-IME2002)
Culture> ja-JPName> Chinese (Traditional) - US Keyboard
Culture> zh-TWName> Japanese
Culture> ja-JP得到系统中所有的输入法以后,就可以通过Culture和Name来选择特定的输入语种和输入法。
2)切换到简体中文输入法
if(InputLanguage.DefaultInputLanguage.LayoutName.IndexOf("Keyboard")==-1 && InputLanguage.DefaultInputLanguage.Culture.Name.Equals("zh-CN"))
{
InputLanguage.CurrentInputLanguage=InputLanguage.DefaultInputLanguage;
}
else
{
foreach(InputLanguage lang in InputLanguage.InstalledInputLanguages)
{
if(lang.Culture.Name.Equals("zh-CN") && lang.LayoutName.IndexOf("Keyboard")==-1)
{
InputLanguage.CurrentInputLanguage=lang;
break;
}
}
}
在这段程序中,首先对系统默认的输入法进行判断,如果默认输入法的Culture是zh-CN,而且输入法名字中不包含"Keyboard"字样,说明默认输入法是一种简体中文输入法,而且不是"Chinese (Simplified) - US Keyboard",这时就将系统默认的输入法作为当前输入法。如果以上条件不满足,则对系统中安装的所有输入法进行遍历,将遍历时所遇到的第一种Culture为zh-CN而且输入法名字不包含"Keyboard"字样的输入法作为当前输入法。
Hogwarts - S(u)ddenly dis@ppeared...
-
本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。