C#窗体程序屏蔽输入法 |
您所在的位置:网站首页 › 开启关闭中文输入法 › C#窗体程序屏蔽输入法 |
要在WinForm中屏蔽输入法,设置以下几个要素:
1、在WinForm的InputLanguageChanging事件中添加e.Cancel = True
2、键盘事件向窗体注册(窗体属性)
注意:如果只是屏蔽系统的输入法并且还要有切换输入法的功能(系统切换输入法会造成某些程序卡死),那么在函数InputLanguageChanging中添加“切换输入法的代码”,这个切换输入法的代码不能加在其它地方,不然会引起输入法浮动窗口和系统右下角输入法图标不一致,因为“切换输入法的代码”只会控制输入法浮动窗口,而右下角输入法图标是根据输入法浮动窗口值来切换的,自己切换输入法的代码如下: private void MainForm_InputLanguageChanging(object sender, InputLanguageChangingEventArgs e) { //程序禁止切换输入法的消息传到Windows系统 e.Cancel = true; int iCountLan = InputLanguage.InstalledInputLanguages.Count; //获取当前输入法的序号iFlagInputLan for (int i = 0; i < InputLanguage.InstalledInputLanguages.Count; i++) { if (InputLanguage.CurrentInputLanguage.LayoutName == InputLanguage.InstalledInputLanguages[i].LayoutName) { iFlagInputLan = i; break; } } //获取下一个输入法的序号iFlagInputLan if ((iFlagInputLan + 1) >= iCountLan) { iFlagInputLan = 0; } else { iFlagInputLan++; } //设置输入法 InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[iFlagInputLan]; }
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |