Share via


Comment : définir les modes d'entrée Smartphone

Mise à jour : novembre 2007

Vous pouvez affecter au mode d'entrée pour TextBox dans une application Smartphone la valeur ABC, T9 et des modes d'entrée numériques comme défini par l'énumération InputMode. La classe InputModeEditor fournit l'accès aux méthodes d'entrée Smartphone pour la saisie de texte.

Le mode AlphaCurrent est la valeur de mode d'entrée par défaut pour les zones de texte utilisées pour les caractères alpha. Ce mode correspond au mode sélectionné en maintenant la touche étoile (*) enfoncée sur le Smartphone.

Vous ne pouvez pas utiliser InputModeEditor pour modifier explicitement les paramètres de casse pour les modes d'entrée alpha. Toutefois, le mode d'entrée alpha utilisé (T9 ou ABC) est conservé par le mode d'entrée AlphaCurrent lorsqu'il est défini avec la touche étoile.

Vous pouvez utiliser uniquement InputModeEditor sur un Smartphone, et uniquement avec un contrôle TextBox.

Exemple

L'exemple de code suivant affiche la définition du mode d'entrée sur trois zones de texte : Name, Phoneet City. Les zones de texte Name et City sont définies avec le mode d'entrée AlphaCurrent et la zone de texte Phone est définie avec le mode d'entrée Numérique.

Pour observer le fonctionnement de AlphaCurrent, exécutez la procédure suivante :

  1. La zone de texte Name étant sélectionnée, maintenez la touche étoile enfoncée et entrez du texte à l'aide des modes d'entrée T9 ou ABC.

  2. Entrez le texte dans la zone de texte City. Notez que le mode d'entrée est le même que celui de la zone de texte Name.

Imports System
Imports System.Windows.Forms
Imports Microsoft.WindowsCE.Forms



Public Class Form1
   Inherits System.Windows.Forms.Form
   Private mainMenu1 As System.Windows.Forms.MainMenu
   Private mi1 As System.Windows.Forms.MenuItem

   ' Text box for name.
   Private textBox1 As System.Windows.Forms.TextBox
   ' Text box for phone number.
   Private textBox2 As System.Windows.Forms.TextBox
   ' Text box for city.
   Private textBox3 As System.Windows.Forms.TextBox

   ' Labels for name, phone, and city
   Private label1 As System.Windows.Forms.Label
   Private label2 As System.Windows.Forms.Label
   Private label3 As System.Windows.Forms.Label


   Public Sub New()

      InitializeComponent()

      ' Add a menu to close the application.
      mi1 = New MenuItem()
      mainMenu1.MenuItems.Add(mi1)
      AddHandler mi1.Click, AddressOf mi1_Click
      mi1.Text = "Done"

      ' Set input mode for name text box to AlphaCurrent.
      InputModeEditor.SetInputMode(textBox1, InputMode.AlphaCurrent)

      ' Set input mode for phone number text box to Numeric.
      InputModeEditor.SetInputMode(textBox2, InputMode.Numeric)
      ' Set input mode for city text box to AlphaCurrent.
      InputModeEditor.SetInputMode(textBox3, InputMode.AlphaCurrent)
   End Sub



   Protected Overrides Sub Dispose(disposing As Boolean)
      MyBase.Dispose(disposing)
   End Sub


   Private Sub InitializeComponent()
      Me.mainMenu1 = New System.Windows.Forms.MainMenu()

      Me.mainMenu1 = New System.Windows.Forms.MainMenu()
      Me.textBox1 = New System.Windows.Forms.TextBox()
      Me.textBox2 = New System.Windows.Forms.TextBox()
      Me.textBox3 = New System.Windows.Forms.TextBox()

      Me.label1 = New System.Windows.Forms.Label()
      Me.label2 = New System.Windows.Forms.Label()
      Me.label3 = New System.Windows.Forms.Label()
      '
      ' textBox1
      '
      Me.textBox1.Location = New System.Drawing.Point(64, 8)
      Me.textBox1.Size = New System.Drawing.Size(104, 25)
      Me.textBox1.Text = ""
      '
      ' textBox2
      '
      Me.textBox2.Location = New System.Drawing.Point(64, 40)
      Me.textBox2.Size = New System.Drawing.Size(104, 25)
      Me.textBox2.Text = ""
      '
      ' textBox3
      '
      Me.textBox3.Location = New System.Drawing.Point(64, 72)
      Me.textBox3.Size = New System.Drawing.Size(104, 25)
      Me.textBox3.Text = ""
      '
      ' label1
      '
      Me.label1.Location = New System.Drawing.Point(8, 8)
      Me.label1.Size = New System.Drawing.Size(56, 22)
      Me.label1.Text = "Name"
      '
      ' label2
      '
      Me.label2.Location = New System.Drawing.Point(8, 40)
      Me.label2.Size = New System.Drawing.Size(56, 22)
      Me.label2.Text = "Phone"
      '
      ' label3
      '
      Me.label3.Location = New System.Drawing.Point(8, 72)
      Me.label3.Size = New System.Drawing.Size(56, 22)
      Me.label3.Text = "City"
      '
      ' Form1
      '
      Me.Controls.Add(textBox1)
      Me.Controls.Add(textBox2)
      Me.Controls.Add(textBox3)
      Me.Controls.Add(label1)
      Me.Controls.Add(label2)
      Me.Controls.Add(label3)
      Me.Menu = Me.mainMenu1
      Me.Text = "Input Mode Demo"
   End Sub


   Shared Sub Main()
      Application.Run(New Form1())
   End Sub


   Private Sub mi1_Click(sender As Object, e As EventArgs)
      Me.Close()
   End Sub
End Class
using System;
using System.Drawing;
using System.Collections;
using System.Windows.Forms;
using Microsoft.WindowsCE.Forms;

public class Form1 : System.Windows.Forms.Form
{
 private System.Windows.Forms.MainMenu mainMenu1;
 private System.Windows.Forms.MenuItem mi1;

 // Text box for name.
 private System.Windows.Forms.TextBox textBox1;
 // Text box for phone number.
 private System.Windows.Forms.TextBox textBox2;
 // Text box for city.
 private System.Windows.Forms.TextBox textBox3;

 // Labels for name, phone, and city
 private System.Windows.Forms.Label label1;
 private System.Windows.Forms.Label label2;
 private System.Windows.Forms.Label label3;

 public Form1()
 {

  InitializeComponent();

  // Add a menu to close the application.
  mi1 = new MenuItem();
  mainMenu1.MenuItems.Add(mi1);
  mi1.Click +=new EventHandler(mi1_Click);
  mi1.Text = "Done";

  // Set input mode for name text box to AlphaCurrent.
  InputModeEditor.SetInputMode(textBox1, InputMode.AlphaCurrent);

  // Set input mode for phone number text box to Numeric.
  InputModeEditor.SetInputMode(textBox2, InputMode.Numeric);

  // Set input mode for city text box to AlphaCurrent.
  InputModeEditor.SetInputMode(textBox3, InputMode.AlphaCurrent);


 }

 protected override void Dispose( bool disposing )
 {
  base.Dispose( disposing );
 }

 private void InitializeComponent()
 {
  this.mainMenu1 = new System.Windows.Forms.MainMenu();

  this.mainMenu1 = new System.Windows.Forms.MainMenu();
  this.textBox1 = new System.Windows.Forms.TextBox();
  this.textBox2 = new System.Windows.Forms.TextBox();
  this.textBox3 = new System.Windows.Forms.TextBox();

  this.label1 = new System.Windows.Forms.Label();
  this.label2 = new System.Windows.Forms.Label();
  this.label3 = new System.Windows.Forms.Label();
  //
  // textBox1
  //
  this.textBox1.Location = new System.Drawing.Point(64, 8);
  this.textBox1.Size = new System.Drawing.Size(104, 25);
  this.textBox1.Text = "";
  //
  // textBox2
  //
  this.textBox2.Location = new System.Drawing.Point(64, 40);
  this.textBox2.Size = new System.Drawing.Size(104, 25);
  this.textBox2.Text = "";
  //
  // textBox3
  //
  this.textBox3.Location = new System.Drawing.Point(64, 72);
  this.textBox3.Size = new System.Drawing.Size(104, 25);
  this.textBox3.Text = "";
  //
  // label1
  //
  this.label1.Location = new System.Drawing.Point(8, 8);
  this.label1.Size = new System.Drawing.Size(56, 22);
  this.label1.Text = "Name";
  //
  // label2
  //
  this.label2.Location = new System.Drawing.Point(8, 40);
  this.label2.Size = new System.Drawing.Size(56, 22);
  this.label2.Text = "Phone";
  //
  // label3
  //
  this.label3.Location = new System.Drawing.Point(8, 72);
  this.label3.Size = new System.Drawing.Size(56, 22);
  this.label3.Text = "City";
  //
  // Form1
  //
  this.Controls.Add(this.textBox1);
  this.Controls.Add(this.textBox2);
  this.Controls.Add(this.textBox3);
  this.Controls.Add(this.label1);
  this.Controls.Add(this.label2);
  this.Controls.Add(this.label3);
  this.Menu = this.mainMenu1;
  this.Text = "Input Mode Demo";

 }

 static void Main()
 {
  Application.Run(new Form1());
 }

 private void mi1_Click(object sender, EventArgs e)
 {
  this.Close();
 }
}

Compilation du code

Cet exemple nécessite des références aux espaces de noms suivants :

Voir aussi

Autres ressources

Développement de SmartPhone et le .NET Compact Framework