Condividi tramite


Classe InputPanel

Aggiornamento: novembre 2007

Controlla il SIP (pannello di input, Soft Input Panel) per l'immissione di dati su Pocket PC e altri dispositivi Windows Embedded CE. 

Spazio dei nomi:  Microsoft.WindowsCE.Forms
Assembly:  Microsoft.WindowsCE.Forms (in Microsoft.WindowsCE.Forms.dll)

Sintassi

'Dichiarazione
Public Class InputPanel _
    Inherits Component
'Utilizzo
Dim instance As InputPanel
public class InputPanel : Component
public ref class InputPanel : public Component
public class InputPanel extends Component

Note

In .NET Compact Framework è disponibile il componente InputPanel che fornisce un'implementazione gestita del controllo SIP in Windows Embedded CE. Quando si crea un'applicazione basata su Windows destinata alla piattaforma Pocket PC, in Visual Studio viene automaticamente aggiunto un componente MainMenu al file Form1 nel progetto. Questo componente consente di aggiungere al form la barra dei menu inferiore con l'icona SIP. Per l'utilizzo del SIP non è richiesta programmazione; gli utenti possono attivare e disattivare la visualizzazione del SIP selezionando l'icona. Per programmare il SIP, trascinare il componente InputPanel da ToolBox nel form.

È possibile visualizzare il SIP a livello di codice mediante la proprietà Enabled, ottenerne le dimensioni con la proprietà Bounds e determinare le dimensioni dell'area del form non occupata dal SIP con la proprietà VisibleDesktop. Si noti che la proprietà Bounds restituisce sempre una larghezza di 240 pixel e un'altezza di 80 pixel per i Pocket PC, indipendentemente dall'attivazione o meno del SIP. L'evento EnabledChanged si verifica ogni volta che il SIP viene attivato o disattivato dall'utente o a livello di codice. La programmazione del SIP è in genere necessaria per riposizionare o ridimensionare controlli sul form quando il SIP viene attivato e disattivato.

Topic Location
Procedura: utilizzare il componente InputPanel .NET Compact Framework
Procedura: utilizzare il componente InputPanel .NET Compact Framework
Procedura: utilizzare il componente InputPanel .NET Compact Framework

Esempi

Nell'esempio riportato di seguito viene presentata una casella di testo in una pagina di un controllo Struttura a schede. Il SIP viene visualizzato quando la casella di testo riceve lo stato attivo; l'evento EnabledChanged viene utilizzato per ridurre l'altezza del controllo Struttura a schede all'attivazione del SIP e per ripristinare l'altezza originale alla disattivazione del SIP.

Nota

Per compilare questo esempio, è necessario aggiungere al progetto un riferimento allo spazio dei nomi Microsoft.WindowsCE.Forms.

Private Sub TextBox1_GotFocus(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles TextBox1.GotFocus
 ' Display the SIP.
 ' Note that the EnabledChanged event occurs
 ' whenever the SIP is enabled or disabled.
 InputPanel1.Enabled = True
End Sub
Private Sub InputPanel1_EnabledChanged(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles InputPanel1.EnabledChanged
 If InputPanel1.Enabled = False Then

  ' The SIP is disabled, so set the height of the tab control
  ' to its original height with a variable (TabOriginalHeight),
  ' which is determined during initialization of the form.
  VisibleRect = InputPanel1.VisibleDesktop
  TabControl1.Height = TabOriginalHeight
 Else
  ' The SIP is enabled, so the height of the tab control
  ' is set to the height of the visible desktop area.
  VisibleRect = InputPanel1.VisibleDesktop
  TabControl1.Height = VisibleRect.Height
 End If

 ' The Bounds property always returns a width of 240 and a height of 80
 ' pixels for Pocket PCs, regardless of whether or not the SIP is enabled.
 BoundsRect = InputPanel1.Bounds

 ' Show the VisibleDesktop and Bounds values
 ' on the second tab for demonstration purposes.
       VisibleInfo.Text = String.Format("VisibleDesktop: X = {0}, " _
       & "Y = {1}, Width = {2}, Height = {3}", _
       VisibleRect.X, VisibleRect.Y, _
       VisibleRect.Width, VisibleRect.Height)
       BoundsInfo.Text = String.Format("Bounds: X = {0}, Y = {1}," _
          & "Width = {2}, Height = {3}", BoundsRect.X, BoundsRect.Y, _
          BoundsRect.Width, BoundsRect.Height)
End Sub
private void textBox1_GotFocus(object sender, System.EventArgs e)
{
    // Display the SIP.
    // Note that the EnabledChanged event occurs
    // whenever the SIP is enabled or disabled.
    inputPanel1.Enabled = true;

}
private void inputPanel1_EnabledChanged(object sender, EventArgs e)
{
    if (inputPanel1.Enabled == false)
    {
        // The SIP is disabled, so set the height of the tab control
        // to its original height with a variable (TabOriginalHeight),
        // which is determined during initialization of the form.
        VisibleRect = inputPanel1.VisibleDesktop;
        tabControl1.Height = TabOriginalHeight;
    }
    else
    {
        // The SIP is enabled, so the height of the tab control
        // is set to the height of the visible desktop area.
        VisibleRect = inputPanel1.VisibleDesktop;
        tabControl1.Height = VisibleRect.Height;
    }

    // The Bounds property always returns a width of 240 and a height of 80
    // pixels for Pocket PCs, regardless of whether or not the SIP is enabled.
    BoundsRect = inputPanel1.Bounds;

    // Show the VisibleDestkop and Bounds values
    // on the second tab for demonstration purposes.
    VisibleInfo.Text = String.Format("VisibleDesktop: X = {0}, " +
        "Y = {1}, Width = {2}, Height = {3}", VisibleRect.X,
        VisibleRect.Y, VisibleRect.Width, VisibleRect.Height);
    BoundsInfo.Text = String.Format("Bounds: X = {0}, Y = {1}, " +
        "Width = {2}, Height = {3}", BoundsRect.X, BoundsRect.Y,
        BoundsRect.Width, BoundsRect.Height);
}

Gerarchia di ereditarietà

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      Microsoft.WindowsCE.Forms.InputPanel

Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Piattaforme

Windows CE, Windows Mobile per Pocket PC

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Compact Framework

Supportato in: 3.5, 2.0, 1.0

Vedere anche

Riferimenti

Membri InputPanel

Spazio dei nomi Microsoft.WindowsCE.Forms