• C#切换输入法代码段


    string languageName="五笔";//查找第一个五笔输入法 
    foreach(InputLanguage l in InputLanguage.InstalledInputLanguages) 

    if(l.LayoutName.IndexOf(languageName)>=0

    InputLanguage.CurrentInputLanguage
    =l; 
    break

    }
    using System.Runtime.InteropServices;

    #region 解决窗口切换输入法变全角的问题

            
    //声明一些API函数
            [DllImport("imm32.dll")]
            
    internal static extern IntPtr ImmGetContext(IntPtr hwnd);
            [DllImport(
    "imm32.dll")]
            
    internal static extern bool ImmGetOpenStatus(IntPtr himc);
            [DllImport(
    "imm32.dll")]
            
    internal static extern bool ImmSetOpenStatus(IntPtr himc, bool b);
            [DllImport(
    "imm32.dll")]
            
    internal static extern bool ImmGetConversionStatus(IntPtr himc, ref int lpdw, ref int lpdw2);
            [DllImport(
    "imm32.dll")]
            
    internal static extern int ImmSimulateHotKey(IntPtr hwnd, int lngHotkey);
            
    private const int IME_CMODE_FULLSHAPE = 0x8;
            
    private const int IME_CHOTKEY_SHAPE_TOGGLE = 0x11;
            
    //重载Form的OnActivated

            
    protected override void OnActivated(EventArgs e)
            {
                
    base.OnActivated(e);
                IntPtr HIme 
    = ImmGetContext(this.Handle);
                
    if (ImmGetOpenStatus(HIme))  //如果输入法处于打开状态
                {
                    
    int iMode = 0;
                    
    int iSentence = 0;
                    
    bool bSuccess = ImmGetConversionStatus(HIme, ref iMode, ref iSentence);  //检索输入法信息
                    if (bSuccess)
                    {
                        
    if ((iMode & IME_CMODE_FULLSHAPE) > 0)   //如果是全角
                            ImmSimulateHotKey(this.Handle, IME_CHOTKEY_SHAPE_TOGGLE);  //转换成半角
                    }
                }
            }
    #endregion 解决窗口切换输入法变全角的问题 
  • 相关阅读:
    保存在线的PDF文件
    官网下载Java
    可执行文件(ELF)格式的理解
    虚拟机不识别U盘
    安装和连接精简版sqlserver2008
    [ZT] Linuxfs Readinglist
    分析ext2文件系统磁盘分区结构
    wma/mp3等格式转换为apple有声电子书格式(m4b) 以及itunes导入码率设置
    Progressivedownload 对于文件格式的要求
    Scaling Redis
  • 原文地址:https://www.cnblogs.com/linmilove/p/1718789.html
Copyright © 2020-2023  润新知