Infoleistensteuerelemente und Bänder
Der wesentliche Zweck eines Infoleiste-Steuerelements ist, als Container für untergeordnete Fenster, Common Dialog Box Steuerelemente Menüs, Symbolleisten, usw.Diese Kapselung von unterstützt das Konzept eines "Bands". Jedes Infoleistenband kann eine beliebige Kombination eine Ziehpunktleiste, der Bitmap, der Beschriftung und einem untergeordneten Fensters enthalten.
CReBarCtrl-Klasse verfügt über zahlreiche Memberfunktionen, die Sie verwenden können, um abzurufen und zu bearbeiten, Informationen für ein bestimmtes Infoleistenband:
GetBandCount wird die Anzahl der aktuellen Bändern im Infoleiste-Steuerelement ab.
GetBandInfo initialisiert eine REBARBANDINFO-Struktur mit Informationen aus dem angegebenen Band.Es gibt eine entsprechende SetBandInfo-Memberfunktion.
GetRect ruft das umgebende Rechteck eines angegebenen Bands ab.
GetRowCount Bands wird die Anzahl der Zeilen in einem Infoleiste-Steuerelement ab.
Ruft den Index eines angegebenen IDToIndex Bands ab.
GetBandBorders ruft die Rahmen eines Bands ab.
Zusätzlich zur Bearbeitung sind einige Memberfunktionen, sofern es Ihnen ermöglichen Ihnen, bestimmte Infoleisten an bänder auszuführen.
InsertBand und DeleteBand Hinzufügen und Entfernen Infoleisten bänder.MinimizeBand und MaximizeBand wirken sich auf die aktuelle Größe eines bestimmten Infoleisten bandes.MoveBand ändert den Index eines bestimmten Infoleistenbandes.ShowBand zeigt an, oder blendet ein Infoleistenband vom Benutzer aus.
Im folgenden Beispiel wird das Hinzufügen eines Symbolleisten bandes (m_wndToolBar) zu einem vorhandenen Infoleiste-Steuerelement (m_wndReBar).Das Band wird beschrieben, indem die rbi-Struktur initialisiert und anschließend die InsertBand-Memberfunktion aufruft:
//load bitmap for toolbar background
m_RebarBitmap.LoadBitmap(IDB_BITMAP1);
//create a toolbar band
m_Toolbar1.Create(this, TBSTYLE_TRANSPARENT | TBSTYLE_FLAT);
m_Toolbar1.LoadToolBar(IDR_MAINFRAME);
REBARBANDINFO rbi = {0};
rbi.cbSize = sizeof(REBARBANDINFO);
rbi.fMask = RBBIM_BACKGROUND | RBBIM_CHILD | RBBIM_CHILDSIZE |
RBBIM_STYLE | RBBIM_TEXT;
rbi.fStyle = RBBS_GRIPPERALWAYS;
rbi.cxMinChild = 300;
rbi.cyMinChild = 50;
rbi.lpText = _T("Band #1");
rbi.cch = 7;
rbi.cx = 300;
rbi.hbmBack = (HBITMAP)m_RebarBitmap;
rbi.hwndChild = (HWND)m_Toolbar1;
m_Rebar.GetReBarCtrl().InsertBand(0, &rbi);