Partager via


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

Autres ressources

Composant InputPanel

Comment : utiliser le composant InputPanel