Implementieren der MFC-Symbolleiste
Eine Symbolleiste ist eine Steuerelementleiste , die die Bitmapbilder von Steuerelementen enthält. Diese Bilder können sich wie Druckknöpfe, Kontrollkästchen oder Optionsfelder verhalten. MFC stellt die Klasse CToolbar bereit, um Symbolleisten zu verwalten.
Wenn Sie sie aktivieren, können Benutzer von MFC-Symbolleisten diese an den Rand eines Fensters andocken, oder an einer beliebigen Stelle im Anwendungsfenster "abdocken". MFC unterstützt keine anpassbaren Symbolleisten wie in der Entwicklungsumgebung.
MFC unterstützt auch QuickInfos: kleine Popupfenster, in denen der Zweck einer Symbolleistenschaltfläche beschrieben wird, wenn Sie die Maus über die Schaltfläche positionieren. Wenn der Benutzer eine Symbolleisten-Schaltfläche drückt, wird standardmäßig eine Statuszeichenfolge in der Statusleiste (falls vorhanden) angezeigt. Sie können die Aktualisierung der "aufleuchtenden" Statusleiste aktivieren, damit die Statuszeichenfolge angezeigt wird, wenn die Maus über die Schaltfläche positioniert wird, ohne dass sie gedrückt wird.
Hinweis
Ab MFC 4.0 werden Symbolleisten und QuickInfo mit der Funktionalität von Windows 95 und höher anstelle der vorherigen, MFC-spezifischen Implementierung implementiert.
Aus Gründen der Abwärtskompatibilität behält MFC die ältere Symbolleistenimplementierung in der Klasse COldToolBar
bei. Die Dokumentation für frühere Versionen von MFC beschreibt COldToolBar
unter CToolBar
.
Erstellen Sie die erste Symbolleiste im Programm, indem Sie die Symbolleistenoption im Anwendungs-Assistenten auswählen. Sie können auch weitere Symbolleisten erstellen.
Die folgenden werden in diesem Artikel eingeführt:
Symbolleistenschaltflächen
Die Schaltflächen in einer Symbolleiste sind den Elementen in einem Menü analog. Beide Arten von Benutzeroberflächen-Objekten generieren Befehle, die das Programm bearbeitet, indem es Handlerfunktionen bereitstellt. Häufig duplizieren Symbolleisten-Schaltflächen die Funktionalität von Menübefehlen und stellen eine alternative Benutzeroberfläche mit derselben Funktionalität bereit. Solche Duplizierung wird einfach angeordnet, indem die Schaltfläche und das Menüelement die gleiche ID erhalten.
Sie können die Schaltflächen in einer Symbolleiste so erstellen, dass sie als Druckknöpfe, Kontrollkästchen oder Optionsfelder angezeigt werden und sich entsprechend verhalten. Weitere Informationen finden Sie unter klasse CToolBar.
Andockbare und unverankerte Symbolleisten
Eine MFC-Symbolleiste kann:
fest entlang der Seite des übergeordneten Fensters geöffnet stehen.
vom Benutzer gezogen und an einer oder mehreren Seiten des von Ihnen angegebenen übergeordneten Fensters "angedockt" oder angefügt werden.
vom Rahmenfenster "abgedockt" oder gelöst werden und im eigenen kleinen Rahmenfenster angezeigt werden, sodass der Benutzer es an eine beliebige Position verschieben kann.
im unverankerten Modus in der Größe verändert werden.
Weitere Informationen finden Sie im Artikel "Andocken" und "Unverankerte Symbolleisten".
Symbolleisten und Tool-Tipps
MFC-Symbolleisten können als "QuickInfo" angezeigt werden. Hierbei handelt es sich um kleine Fenster, die eine Kurztextbeschreibung mit dem Zweck einer Symbolleisten-Schaltfläche enthalten. Wenn der Benutzer die Maus über eine Symbolleisten-Schaltfläche bewegt, bieten die Popupfenster mit den QuickInfos einen Hinweis an. Weitere Informationen finden Sie im Artikel Symbolleistentool Tipps.
Die Klassen CToolBar und CToolBarCtrl
Sie verwalten die Symbolleisten Ihrer Anwendung über die Klasse CToolBar. Ab MFC 4.0 ist CToolBar
erneut implementiert, sodass das allgemeine Steuerelement für Symbolleisten verwendet werden kann, das unter Windows 95 oder höher und Windows NT 3.51 oder höher verfügbar ist.
Diese Neuimplementierung führt zu weniger MFC-Code in Symbolleisten, da MFC die Betriebssystemunterstützung ausnutzt. Das Neuimplementierung verbessert auch die Funktionalität. Sie können Memberfunktionen verwenden CToolBar
, um Symbolleisten zu bearbeiten, oder Sie können einen Verweis auf das zugrunde liegende CToolBarCtrl-Objekt abrufen und dessen Memberfunktionen für die Anpassung der Symbolleiste und zusätzliche Funktionen aufrufen.
Tipp
Wenn Sie in die ältere MFC-Implementierung von CToolBar
investiert haben, ist diese Unterstützung weiterhin verfügbar. Weitere Informationen finden Sie im Artikel "Using Your Old Toolbars".
Siehe auch das allgemeine MFC-Beispiel DOCKTOOL.
Die Symbolleistenbitmap
Ein erstelltes CToolBar
-Objekt erstellt das Symbolleistenbild, indem es eine einzelne Bitmap lädt, das ein Bild für jede Schaltfläche enthält. Der Anwendungs-Assistent erstellt eine standardmäßige Symbolleistenbitmap, die Sie mit dem Visual C++ -Symbolleisten-Editor anpassen können.
Was möchten Sie mehr über
Die Klassen CToolBar und CToolBarCtrl