SO WIRD'S GEMACHT: Verwenden Sie die HardwareButton-Komponente

Dieser Dokumentation für die Vorschau nur ist und in späteren Versionen geändert. Leere Themen wurden als Platzhalter eingefügt.]

Sie können die Hardwaretasten auf einem Pocket PC, aktivieren ein Form konfigurieren. In diesem Beispiel wird eine Anwendung mit der ersten und vierten Taste aktiviert und gibt in den Status Balken, auf welche Schaltfläche gedrückt wurde.

Hinweis

Die Hardwaretasten entsprechen der Anwendungsschlüssel auf einem Pocket PC.Der Anwendungsschlüssel sind nicht in die Kerngruppe Schlüssel enthalten, damit Ihre Werte aus einem Tastaturlayout zur nächsten variieren.Nur die wichtigsten Standardzuordnung wird von HardwareButton unterstützt.Ein Beispiel Behandeln von Tastatureingaben von anderen Schlüsseln Hardware finden Sie unter SO WIRD'S GEMACHT: Erkennen von Navigationstasten.

Zum Festlegen einer Taste, um ein Formular zu aktivieren

  1. Erstellen Sie eine Pocket PC-Windows-Anwendung.

  2. Erstellen Sie eine Instanz des ein HardwareButton.

  3. Legen Sie die AssociatedControl-Eigenschaft auf das Formular.

  4. Legen Sie die HardwareKey -Eigenschaft auf eine Anwendungstaste durch die HardwareKeys-Enumeration definiert.

  5. Wiederholen Sie die Schritte 2 bis 4 für zusätzliche Tasten, die Sie verwenden möchten.

  6. Wenn eine Taste gedrückt und freigegeben wird, erhält das Formular die KeyDown und KeyUp Ereignisse. Jedes Ereignis können Sie bestimmen, ob eine Taste gedrückt wurde.

Beispiel

Diesem Beispiel wird die erste und die vierte Hardwaretasten um das Formular zu aktivieren. Gehen Sie folgendermaßen vor um zu demonstrieren,

  1. Führen Sie die Anwendung aus.

  2. Öffnen Sie eine andere Anwendung auf dem Gerät.

  3. Drücken Sie die Taste 1 oder 4, um das Formular dieser Anwendung zu aktivieren. Die Statusleiste gibt an, welche Taste gedrückt wurde.

                        Private
                        Sub ConfigHWButton()
    ' Set KeyPreview to true so that the form     ' will receive key events before they     ' are passed to the control that has focus. Me.KeyPreview = True

    hwb1 = New HardwareButton()
    hwb4 = New HardwareButton()

    ' Set the AssociatedControl property    ' to the current form and configure the    ' first and fourth buttons to activate the form.Try
        hwb1.AssociatedControl = Me
        hwb4.AssociatedControl = Me
        hwb1.HardwareKey = HardwareKeys.ApplicationKey1
        hwb4.HardwareKey = HardwareKeys.ApplicationKey4
    Catch exc As Exception
        MessageBox.Show(exc.Message & " Check if the hardware button is " & _
            "physically available on this device.")
    EndTryEndSubPrivateOverloadsSub OnKeyUp(sender AsObject, e As KeyEventArgs) _
    HandlesMyBase.KeyUp
    ' When a hardware button is pressed and released,    ' this form receives the KeyUp event. The OnKeyUp    ' method is used to determine which hardware    ' button was pressed, because the event data    ' specifies a member of the HardwareKeys enumeration.SelectCaseCType(e.KeyCode, HardwareKeys)
        Case HardwareKeys.ApplicationKey1
            statusBar1.Text = "Button 1 pressed."Case HardwareKeys.ApplicationKey4
            statusBar1.Text = "Button 4 pressed."CaseElseEndSelectEndSub
                        // Configure hardware buttons
                        // 1 and 4 to activate the current form.
                        private
                        void HBConfig()
    {
        try 
        {
            hwb1 = new HardwareButton();
            hwb4 = new HardwareButton();
            hwb1.AssociatedControl = this;
            hwb4.AssociatedControl = this;
            hwb1.HardwareKey = HardwareKeys.ApplicationKey1;
            hwb4.HardwareKey = HardwareKeys.ApplicationKey4;
        }
        catch (Exception exc)
        {
            MessageBox.Show(exc.Message + " Check if the hardware " +
                "button is physically available on this device.");
        }
}

// When a hardware button is pressed and released,// this form receives the KeyUp event. The OnKeyUp// method is used to determine which hardware// button was pressed, because the event data// specifies a member of the HardwareKeys enumeration.privatevoid OnKeyUp(object sender, KeyEventArgs e)
{
    switch ((HardwareKeys)e.KeyCode)
    {
        case HardwareKeys.ApplicationKey1:
            statusBar1.Text = "Button 1 pressed.";
            break;

        case HardwareKeys.ApplicationKey4:
            statusBar1.Text = "Button 4 pressed.";
            break;

        default:
            break;
    }
}

Kompilieren des Codes

In diesem Beispiel sind Verweise auf die folgenden Namespaces erforderlich:

Siehe auch

Referenz

HardwareButton

Weitere Ressourcen

Pocket PC-Entwicklung und .NET Compact Framework