InputLanguage 类
提供方法和字段以管理输入语言。无法继承此类。
**命名空间:**System.Windows.Forms
**程序集:**System.Windows.Forms(在 system.windows.forms.dll 中)
语法
声明
Public NotInheritable Class InputLanguage
用法
Dim instance As InputLanguage
public sealed class InputLanguage
public ref class InputLanguage sealed
public final class InputLanguage
public final class InputLanguage
备注
输入语言是区域性/键盘布局对,它可确定键盘上的物理键如何映射或绘制某种语言的字符。输入语言基于一个 Windows 输入区域设置标识符,例如 Platform SDK 函数 GetKeyboardLayout 返回的标识符。输入区域设置标识符又称为键盘布局 (HKL) 值的句柄。
使用所提供的 static 方法查找所有已安装的系统映射,并为线程或进程更改输入语言。调用 CurrentInputLanguage 获取当前输入语言。调用 DefaultInputLanguage 获取默认输入语言。调用 InstalledInputLanguages 获取此系统中所有已安装的语言。获得所有已安装语言的列表后,可使用 CurrentInputLanguage 将当前输入语言更改为其他语言。
示例
下面的代码示例获取已安装语言的列表。该示例要求已实例化 textBox1
,并且 textBox1.MultiLine
已设置为 true。
Public Sub GetLanguages()
' Gets the list of installed languages.
Dim lang As InputLanguage
For Each lang In InputLanguage.InstalledInputLanguages
textBox1.Text &= lang.Culture.EnglishName & ControlChars.Cr
Next lang
End Sub 'GetLanguages
public void GetLanguages() {
// Gets the list of installed languages.
foreach(InputLanguage lang in InputLanguage.InstalledInputLanguages) {
textBox1.Text += lang.Culture.EnglishName + '\n';
}
}
public:
void GetLanguages()
{
// Gets the list of installed languages.
for each ( InputLanguage^ lang in InputLanguage::InstalledInputLanguages )
{
textBox1->Text = String::Concat( textBox1->Text, lang->Culture->EnglishName, "\n" );
}
}
public void GetLanguages()
{
// Gets the list of installed languages.
IEnumerator objEnum = InputLanguage.get_InstalledInputLanguages().
GetEnumerator();
while (objEnum.MoveNext()) {
InputLanguage lang = (InputLanguage)objEnum.get_Current();
textBox1.set_Text(textBox1.get_Text() + lang.get_Culture().
get_EnglishName() + '\n');
}
} //GetLanguages
下一个示例将默认输入语言设置为当前输入语言。该示例要求已实例化 textBox1
,并且 textBox1.MultiLine
已设置为 true。
Public Sub SetNewCurrentLanguage()
' Gets the default, and current languages.
Dim myDefaultLanguage As InputLanguage = InputLanguage.DefaultInputLanguage
Dim myCurrentLanguage As InputLanguage = InputLanguage.CurrentInputLanguage
textBox1.Text = "Current input language is: " & _
myCurrentLanguage.Culture.EnglishName & ControlChars.Cr
textBox1.Text &= "Default input language is: " & _
myDefaultLanguage.Culture.EnglishName & ControlChars.Cr
' Changes the current input language to the default, and prints the new current language.
InputLanguage.CurrentInputLanguage = myDefaultLanguage
textBox1.Text &= "Current input language is now: " & _
myDefaultLanguage.Culture.EnglishName
End Sub 'SetNewCurrentLanguage
public void SetNewCurrentLanguage() {
// Gets the default, and current languages.
InputLanguage myDefaultLanguage = InputLanguage.DefaultInputLanguage;
InputLanguage myCurrentLanguage = InputLanguage.CurrentInputLanguage;
textBox1.Text = "Current input language is: " + myCurrentLanguage.Culture.EnglishName + '\n';
textBox1.Text += "Default input language is: " + myDefaultLanguage.Culture.EnglishName + '\n';
// Changes the current input language to the default, and prints the new current language.
InputLanguage.CurrentInputLanguage = myDefaultLanguage;
textBox1.Text += "Current input language is now: " + myDefaultLanguage.Culture.EnglishName;
}
public:
void SetNewCurrentLanguage()
{
// Gets the default, and current languages.
InputLanguage^ myDefaultLanguage = InputLanguage::DefaultInputLanguage;
InputLanguage^ myCurrentLanguage = InputLanguage::CurrentInputLanguage;
textBox1->Text = String::Format( "Current input language is: {0}\nDefault input language is: {1}\n",
myCurrentLanguage->Culture->EnglishName, myDefaultLanguage->Culture->EnglishName );
// Changes the current input language to the default, and prints the new current language.
InputLanguage::CurrentInputLanguage = myDefaultLanguage;
textBox1->Text = String::Format( "{0}Current input language is now: {1}",
textBox1->Text, myDefaultLanguage->Culture->EnglishName );
}
public void SetNewCurrentLanguage()
{
// Gets the default, and current languages.
InputLanguage myDefaultLanguage =
InputLanguage.get_DefaultInputLanguage();
InputLanguage myCurrentLanguage =
InputLanguage.get_CurrentInputLanguage();
textBox1.set_Text("Current input language is: "
+ myCurrentLanguage.get_Culture().get_EnglishName() + '\n');
textBox1.set_Text(textBox1.get_Text() + "Default input language is: "
+ myDefaultLanguage.get_Culture().get_EnglishName() + '\n');
// Changes the current input language to the default,
// and prints the new current language.
InputLanguage.set_CurrentInputLanguage(myDefaultLanguage);
textBox1.set_Text(textBox1.get_Text()
+ "Current input language is now: "
+ myDefaultLanguage.get_Culture().get_EnglishName());
} //SetNewCurrentLanguage
继承层次结构
System.Object
System.Windows.Forms.InputLanguage
线程安全
此类型的任何公共静态(Visual Basic 中的 Shared)成员都是线程安全的,但不保证所有实例成员都是线程安全的。
平台
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
版本信息
.NET Framework
受以下版本支持:2.0、1.1、1.0