
Objekte der Klasse CToolBar sind Steuerleisten, die eine der Bitmap-Schaltflächen und Trennzeichen optional Zeile. Die Schaltflächen können wie Schaltflächen, Kontrollkästchen Schaltflächen oder Optionsfelder handeln. CToolBar Objekte sind in der Regel eingebettete Elemente der Frame-Fenster Objekte der Klasse CFrameWnd oder CMDIFrameWnd abgeleitet.
GetToolBarCtrl, eine Member-Funktion neue MFC 4.0 können Sie das allgemeine Windows-Steuerelement Unterstützung für die Anpassung von Symbolleisten und zusätzliche Funktionen nutzen. CToolBar Memberfunktionen geben Sie die meisten Funktionen der allgemeinen Windows-Steuerelemente; jedoch wenn Sie GetToolBarCtrlaufrufen, können Sie Symbolleisten noch mehr der Merkmale der Windows 95-Symbolleisten geben. Wenn Sie GetToolBarCtrlaufrufen, wird einen Verweis auf ein CToolBarCtrl -Objekt zurückgegeben. Weitere Informationen zum Entwerfen von Symbolleisten mithilfe von allgemeine Windows-Steuerelementen finden Sie unter CToolBarCtrl . Weitere allgemeine Informationen über Standardsteuerelemente finden Sie unter Allgemeine Steuerelemente in der Windows 95 SDK Programmer's Reference.
Visual C++ bietet zwei Methoden zum Erstellen einer Symbolleiste. Gehen folgendermaßen Sie vor um eine Symbolleistenressource mit dem Ressourcen-Editor zu erstellen,:
Führen Sie andernfalls diese Schritte:
Alle Schaltflächenbilder die in der Symbolleiste stammen aus einer Bitmap, die ein Bild für jede Schaltfläche enthalten muss. Alle Bilder müssen die gleiche Größe sein; der Standardwert ist 16 Pixel breit und 15 Pixel hoch. Bilder müssen im Bitmap nebeneinander sein.
Die SetButtons -Funktion akzeptiert einen Zeiger auf ein Array von Steuerelement-IDs und eine ganze Zahl, die die Anzahl der Elemente im Array angibt. Die Funktion setzt jede Schaltfläche ID auf den Wert des entsprechenden Elements des Arrays und weist jede Schaltfläche einen Bildindex, der die Position der Schaltfläche Bild in der Bitmap angibt. Wenn ein Array-Element den Wert ID_SEPARATORhat, wird kein Bildindex zugewiesen.
Die Reihenfolge der Bilder in der Bitmap ist in der Regel die Reihenfolge in der sie auf dem Bildschirm gezeichnet werden, aber die SetButtonInfo -Funktion können Sie die Beziehung zwischen Bild und Zeichnung ändern.
Alle Schaltflächen auf einer Symbolleiste sind die gleiche Größe. Der Standardwert ist 24 x 22 Pixel, in Übereinstimmung mit Windows Schnittstelle Richtlinien für Software Design. Zusätzlichen Abstand zwischen Bild und Schaltfläche Dimensionen wird verwendet, um einen Rahmen um das Bild zu bilden.
Jede Schaltfläche verfügt über ein Bild. Die verschiedenen button Staaten und Stile (gedrückten, oben, unten, Behinderte, Behinderte nach unten und unbestimmt) aus, dass ein Bild generiert. Obwohl Bitmaps beliebiger Farbe sein kann, erreichen Sie die besten Ergebnisse mit Bildern in schwarz und Graustufen.
Symbolleisten-Schaltflächen imitieren Drucktasten standardmäßig. Symbolleisten-Schaltflächen können jedoch auch das Kontrollkästchen Schaltflächen oder Optionsfelder nachahmen. Das Kontrollkästchen Schaltflächen über drei Zustände verfügen: aktiviert, deaktiviert und unbestimmt. Radio-Buttons haben nur zwei Zustände: aktiviert und deaktiviert.
Um eine einzelne Taste oder Trennzeichen Stil festlegen, ohne auf ein Array verweisen, rufen Sie GetButtonStyle auf den Stil abzurufen, und rufen Sie dann SetButtonStyle statt SetButtons. SetButtonStyle ist am nützlichsten, wenn Sie einen Schaltflächenstil zur Laufzeit ändern möchten.
Um Text auf einer Schaltfläche angezeigt zuzuweisen, rufen Sie GetButtonText zum Abrufen von Text auf der Schaltfläche angezeigt werden soll, und anschließend SetButtonText den Text festgelegt.
Um eine Kontrollkästchen Schaltfläche erstellen, weisen sie den Stil TBBS_CHECKBOX oder ein CCmdUI -Objekt SetCheck Member-Funktion in einem ON_UPDATE_COMMAND_UI -Handler. Aufruf SetCheck verwandelt eine Drucktaste in einer Kontrollkästchen Schaltfläche. Pass SetCheck Argument 0 für deaktiviert, 1 für aktiviert, oder 2 für unbestimmte.
Um ein Optionsfeld zu erstellen, rufen Sie einen ON_UPDATE_COMMAND_UI -Handler ein CCmdUI -Objekt SetRadio Member-Funktion. Übergeben Sie SetRadio ein Argument 0 für deaktiviert oder ungleich NULL für überprüft. Um eine Optionsgruppe gegenseitig Verhalten bereitzustellen, müssen Sie ON_UPDATE_COMMAND_UI -Handler für alle Schaltflächen in der Gruppe.
Weitere Informationen über die Verwendung der CToolBar-Klassefinden Sie im Artikel Symbolleisten im Visual C++ Programmer's Guide und technischer Hinweis 31, Steuerleisten.
# include lt;afxext.h>
Klasse&nmember |nbsp; Basisklasse | Hierarchiediagramm
Proben&Nbsp; MFC-Beispiel CTRLBARS | MFC-Beispiel DLGCBR32 | MFC-Beispiel DOCKTOOL
Siehe auch&Nbsp;CToolBarCtrl, CControlBar, CToolBar::Create, CToolBar::LoadBitmap, CToolBar::SetButtons, CCmdUI::SetCheck, CCmdUI::SetRadio