InputPanel.InputMethodCollection, classe
Mise à jour : novembre 2007
Fournit l'accès à tous les logiciels de méthode d'entrée sur un Pocket PC. Cette classe ne peut pas être héritée.
Espace de noms : Microsoft.WindowsCE.Forms
Assembly : Microsoft.WindowsCE.Forms (dans Microsoft.WindowsCE.Forms.dll)
Syntaxe
'Déclaration
Public NotInheritable Class InputMethodCollection _
Implements IList, ICollection, IEnumerable
'Utilisation
Dim instance As InputPanel.InputMethodCollection
public sealed class InputMethodCollection : IList,
ICollection, IEnumerable
public ref class InputMethodCollection sealed : IList,
ICollection, IEnumerable
public final class InputMethodCollection implements IList, ICollection, IEnumerable
Notes
Cette collection accède aux méthodes d'entrée de texte et de caractères dans le clavier virtuel (SIP) sur un Pocket PC. Les méthodes d'entrée courantes sont les suivantes :
Clavier
Cliquez sur les caractères du clavier SIP ou d'un clavier matériel connecté à votre Pocket PC.
Reconnaissance des lettres
Tracez des lettres et des nombres dans le clavier virtuel (SIP). Lorsque l'utilisateur marque une pause, l'écriture est automatiquement convertie en texte tapé et affiché au point d'insertion.
Reconnaissance des mots
Dans le clavier virtuel (SIP), tracez des traits prédéterminés qui se transforment en caractères spécifiques. Cette méthode d'entrée est semblable à l'émulation de graffiti.
D'autres méthodes d'entrée peuvent être installées pour prendre en charge des langues telles que le japonais et le russe. Lorsqu'une nouvelle méthode d'entrée est installée sur le périphérique, elle est incluse dans la collection des méthodes d'entrée.
Utilisez la propriété InputMethods pour obtenir InputPanel.InputMethodCollection.
Exemples
L'exemple de code suivant énumère InputPanel.InputMethodCollection et liste les méthodes d'entrée disponibles dans une zone de liste. Lorsqu'un utilisateur sélectionne une méthode d'entrée, celle-ci est affectée à la propriété CurrentInputMethod. La propriété Enabled du clavier virtuel (SIP) a la valeur true de sorte que le clavier et les autres zones d'entrée soient affichées pour l'utilisateur.
Imports System
Imports System.Windows.Forms
Imports Microsoft.WindowsCE.Forms
Imports Microsoft.VisualBasic
Public Class Form1
Inherits System.Windows.Forms.Form
Private WithEvents ListBox1 As System.Windows.Forms.ListBox
Private TextBox1 As System.Windows.Forms.TextBox
Private InputPanel1 As Microsoft.WindowsCE.Forms.InputPanel
Public Sub New()
InitializeComponent()
'Display OK Button for closing the application.
Me.MinimizeBox = False
MessageBox.Show(InputPanel1.InputMethods.Count.ToString())
' Display the input panel.
InputPanel1.Enabled = True
' Get the input methods to populate the list box.
' Select the first method.
GetInputMethods()
ListBox1.SelectedIndex = 0
' Set the focus on the text box to render input from the input panel.
TextBox1.Focus()
End Sub
Protected Overrides Sub Dispose(disposing As Boolean)
MyBase.Dispose(disposing)
End Sub
Private Sub InitializeComponent()
Me.InputPanel1 = New Microsoft.WindowsCE.Forms.InputPanel
Me.ListBox1 = New System.Windows.Forms.ListBox
Me.TextBox1 = New System.Windows.Forms.TextBox
'
' ListBox1
'
Me.ListBox1.Location = New System.Drawing.Point(8, 40)
Me.ListBox1.Size = New System.Drawing.Size(200, 80)
'
' TextBox1
'
Me.TextBox1.Location = New System.Drawing.Point(8, 140)
Me.TextBox1.Size = New System.Drawing.Size(200, 200)
'
' Form1
'
Me.Controls.Add(ListBox1)
Me.Controls.Add(TextBox1)
Me.Text = "Input Methods"
End Sub
Shared Sub Main()
Application.Run(New Form1())
End Sub
Private Sub GetInputMethods()
Me.ListBox1.Items.Clear()
' Get the InputMethods collection and
' add each method to the list box.
Dim im As InputMethod
For Each im In InputPanel1.InputMethods
Me.ListBox1.Items.Add(im.Name)
Next im
End Sub
' This event handler iterates through the
' InputMethodCollection and sets the input method
' to the input method selected in the list box.
' When a member of the collection is the
' same the selected value in the list box, that
' method is set to the current input method.
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
' Get the selected input method from the list box.
Dim strIM As String
strIM = ListBox1.SelectedItem.ToString()
' Iterate through the input method collection.
' When there is a match with the input method
' selected in the list box, set the
' CurrentInputMethod property to the selected method.
Dim im As InputMethod
For Each im In InputPanel1.InputMethods
If im.Name = strIM Then
' Change the input method.
InputPanel1.CurrentInputMethod = im
End If
Next im
End Sub
End Class
' Note that the InputMethodCollection
' can also be enumerated as follows:
' InputPanel.InputMethodCollection imc;
' imc = InputPanel1.InputMethods;
' for (int i = 0; i < imc.Count; i++)
' {
' if (imc[i].Name == strIM)
' {
' // Change input method.
' InputPanel1.CurrentInputMethod = imc[i];
'
' break;
' }
' }
using System;
using System.Windows.Forms;
using Microsoft.WindowsCE.Forms;
namespace InputMethodsTest
{
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.MainMenu mainMenu1;
private System.Windows.Forms.ListBox listBox1;
private System.Windows.Forms.TextBox textBox1;
private Microsoft.WindowsCE.Forms.InputPanel ip;
public Form1()
{
InitializeComponent();
//Display OK Button for closing the application.
this.MinimizeBox = false;
MessageBox.Show(ip.InputMethods.Count.ToString());
// Display the input panel.
ip.Enabled = true;
// Get the input methods to populate the list box.
// Select the first method.
GetInputMethods();
listBox1.SelectedIndex = 0;
// Set the focus on the text box to render input from the input panel.
textBox1.Focus();
}
protected override void Dispose( bool disposing )
{
base.Dispose( disposing );
}
#region Windows Form Designer generated code
private void InitializeComponent()
{
this.mainMenu1 = new System.Windows.Forms.MainMenu();
this.ip = new InputPanel();
this.listBox1 = new ListBox();
this.textBox1 = new TextBox();
//
// listBox1
//
this.listBox1.Location = new System.Drawing.Point(8, 40);
this.listBox1.Size = new System.Drawing.Size(200, 80);
this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged);
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(8, 140);
this.textBox1.Size = new System.Drawing.Size(200, 200);
//
// Form1
//
this.Controls.Add(this.listBox1);
this.Controls.Add(this.textBox1);
this.Menu = this.mainMenu1;
this.Text = "Input Methods";
}
#endregion
static void Main()
{
Application.Run(new Form1());
}
private void GetInputMethods()
{
this.listBox1.Items.Clear();
// Get the InputMethods collection and
// add each method to the list box.
foreach (InputMethod im in ip.InputMethods)
{
this.listBox1.Items.Add(im.Name);
}
}
// This event handler iterates through the
// InputMethodCollection and sets the input method
// to the input method selected in the list box.
// When a member of the collection is the
// same the selected value in the list box, that
// method is set to the current input method.
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
// Get the selected input method from the list box.
string strIM;
strIM = listBox1.SelectedItem.ToString();
// Iterate through the input method collection.
// When there is a match with the input method
// selected in the list box, set the
// CurrentInputMethod property to the selected method.
foreach (InputMethod im in ip.InputMethods)
{
if (im.Name == strIM)
// Change the input method.
ip.CurrentInputMethod = im;
}
// Note that the InputMethodCollection
// can also be enumerated as follows:
// InputPanel.InputMethodCollection imc;
// imc = ip.InputMethods;
// for (int i = 0; i < imc.Count; i++)
// {
// if (imc[i].Name == strIM)
// {
// // Change input method.
// ip.CurrentInputMethod = imc[i];
//
// break;
// }
// }
}
}
}
Hiérarchie d'héritage
System.Object
Microsoft.WindowsCE.Forms.InputPanel.InputMethodCollection
Sécurité des threads
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Plateformes
Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC
Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Informations de version
.NET Compact Framework
Pris en charge dans : 3.5, 2.0
Voir aussi
Référence
Membres InputPanel.InputMethodCollection
Microsoft.WindowsCE.Forms, espace de noms