在C#应用程序控制输入法

  • 来源: 程序员之家 作者: sevenleaf   2010-06-28/14:23
  •       在Windows操作系统中至少有3种以上输入法,那么在行业系统管理软件中,输入数据时长城会切换输入法,虽然Windows系统提供了切换快捷键,但对输入工作还是代理不少麻烦。如果在应用程序中为用户提供智能输入法自动切换,那么这样的应用程序就更加专业、更加智能化。例如,在Access数据中,在输入表数据时Access自动切换输入法。
          为了控制输入法,.NET类库在System.Windows.Forms.InputLanguage类中提供了支持。下面介绍InputLanguage类的方法和熟悉实现输入法管理功能。
    获得或设置当前线程的输入法,代码如下:
    Public static InputLanguage CurrentInputLanguage{get;set;}
          获得默认输入法,代码如下:
    Public static InputLanguage DefaultInputLanguage{get;}
          获得系统输入法集,可以通过这个容器对象列举系统当前安装的输入法列表,代码如下:
    Public static InputLanguageCollection InstalledInputLanguages{get;}
          获得输入法在系统托盘中的注册名称,代码如下:
    Public string LayoutName{get;}
          将Windows操作系统中索引输入法添加到ComboBox控件中,代码如下:
    Private void button5_Click(object sender,EventArgs e)
    {
       InputLanguageCollection ilc=InputLanguage.InstalledInputLanguages;
       Foreach(InputLanguage il in ilc)
       {
           comboBox1.Items.Add(il.LayoutName);
       }
       comboBox1.SelectedIndex =InputLanguage.InstalledInputLanguages.IndexOf(InputLanguage.CurrentInputLanguage);
    }
          在ComboBox控件中选择一种输入法后,通过如下代码可以实现输入法切换功能:
    Private void button6_Click(object sender,EventArgs e)
    {
       InputLanguage il=InputLanguage.InstalledInputLanguages[comboBox1.SelectedIndex];
       InputLanguage.CurrentInputLanguage=il;
    }


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多