CBitmapButton

Mithilfe der Klasse CBitmapButton Drucktaste mit der Bezeichnung mit Bitmap-Bilder anstelle von Text Steuerelemente erstellen. CBitmapButton Objekte enthalten bis zu vier Bitmaps, die Bilder für die unterschiedlichen Zustände enthalten eine Schaltfläche übernehmen: oben (oder normal), nach unten (oder ausgewählten), konzentriert, und deaktiviert. Nur die erste Bitmap ist erforderlich; die übrigen sind optional.

Bitmap-Schaltfläche Bilder beinhalten den Rahmen um das Bild als auch das Bild selbst. Die Grenze in der Regel spielt eine Rolle im Zustand der Schaltfläche anzeigen. Beispielsweise ist die Bitmap für den fokussierten Zustand in der Regel wie für den neuesten Zustand, aber mit einem gestrichelten Rechteck Einsatz von der Grenze oder eine dicke durchgezogene Linie an der Grenze. Die Bitmap ähnelt für Behinderte in der Regel staatliche der für der neuesten Zustand aber niedriger Kontrast (wie eine abgeblendet oder grauer Menüauswahl hat).

Diese Bitmaps kann jeder Größe, aber alle werden behandelt, als wären sie die gleiche Größe wie die Bitmap für den auf-Zustand.

Verschiedene Anwendungen erfordern unterschiedliche Kombinationen von Bitmap-Bildern:

Bis Nach unten Konzentriert Behinderte Anwendung
× Bitmap
× × Schaltfläche ohne WS_TABSTOP Stil
× × × × Schaltfläche Dialog mit allen Staaten
× × × Dialogfeld Schaltfläche mit WS_TABSTOP Stil

Wenn Sie ein Bitmap-Schaltflächen-Steuerelement zu erstellen, legen Sie den BS_OW&NERDRAW Stil um anzugeben, dass die Schaltfläche Besitzer-drawn.nbsp ist; Dies bewirkt, dass Windows die WM_MEASUREITEM und WM_DRAWITEM für die Schaltfläche Senden; im Rahmen dieser Nachrichten verarbeitet und verwaltet die Darstellung der Schaltfläche für Sie.

Gehen folgendermaßen Sie vor um ein Bitmap-Schaltflächen-Steuerelement im Clientbereich eines Fensters erstellen,:

  1. Erstellen Sie bis zu vier Bitmap-Bilder für die Schaltfläche.

  2. Erstellen Sie das CBitmapButton -Objekt.

  3. Rufen Sie die Create -Funktion auf das Button-Steuerelement von Windows erstellen und fügen Sie es auf das Objekt CBitmapButton.

  4. Rufen Sie die Memberfunktion LoadBitmaps die Bitmapressourcen geladen, nachdem die Bitmapschaltfläche erstellt wird.

Gehen folgendermaßen Sie vor um ein Bitmap-Button-Steuerelement in einem Dialogfeld enthalten,:

  1. Erstellen Sie bis zu vier Bitmap-Bilder für die Schaltfläche.

  2. Erstellen Sie eine Dialogfeldvorlage mit einem Ownerdrawn-Button positioniert, wo die Bitmapschaltfläche soll. Die Größe der Schaltfläche in der Vorlage spielt keine Rolle.

  3. Beschriftung der Schaltfläche auf einen Wert wie "MYIMAGE" und definieren ein Symbol für die Schaltfläche z. B. IDC_MYIMAGE.

  4. In der Anwendung Ressourcenskript, geben jedes der Bilder für die Schaltfläche eine ID erstellt erstellt durch Anfügen einer der Buchstaben "U", "D" Schritt "F" oder "X" (für oben, unten, konzentriert, und deaktiviert) um die Zeichenfolge für die Beschriftung der Schaltfläche in 3. Für die Schaltflächenbeschriftung "MYIMAGE", zum Beispiel, die IDs wäre "MYIMAGEU", "MYIMAGED,", "MYIMAGEF," und "MYIMAGEX." Sie müssen angeben, die ID des Ihre Bitmaps in doppelten Anführungszeichen. Andernfalls des Ressourcen-Editors wird eine ganze Zahl an die Ressource zuweisen und MFC schlägt fehl, wenn das Bild laden.

  5. In der Anwendung Dialogfeldklasse (abgeleitet von CDialog) Hinzufügen einer CBitmapButton -Member-Objekt.

  6. In der CDialog -Objekts OnInitDialog Routine Aufrufen des Objekts CBitmapButton AutoLoad Funktion als Parameter verwenden, die Schaltfläche Steuerelement-ID und der CDialog -Objekts dieser Zeiger.

Wenn Sie Benachrichtigungen von Windows, wie z. B. BN_CLICKED, behandeln möchten per ein Bitmap-Schaltflächen-Steuerelement zu seinem übergeordneten Element (in der Regel eine abgeleitete Klasse von CDialog), fügen Sie hinzu, die CDialog-Objekt eine Meldungszuordnung Eintrag und Meldungshandler Memberfunktion für jede Nachricht abgeleitet. Die Benachrichtigungen von einem CBitmapButton -Objekt sind identisch mit denen von einem Coder -Objekt gesendet.

Die CToolBar -Klasse nimmt eine verschiedene Annäherung zu Bitmap-Schaltflächen.

Weitere Informationen über CBitmapButton, finden Sie unter Kontrolle Themen im Visual C++ Programmer's Guide.

# include lt;afxext.h>

Klassenmember |nbsp; Basisklasse | Hierarchiediagramm

Beispiel&Nbsp; CTRLTEST MFC-Beispiel

Index