Kontrol dan Pita Bilah Ulang
Tujuan utama kontrol rebar adalah untuk bertindak sebagai kontainer untuk jendela anak, kontrol dialog umum, menu, toolbar, dan sebagainya. Penahanan ini didukung oleh konsep "band." Setiap pita rebar dapat berisi kombinasi bilah gripper, bitmap, label teks, dan jendela anak.
Kelas CReBarCtrl
memiliki banyak fungsi anggota yang dapat Anda gunakan untuk mengambil, dan memanipulasi, informasi untuk band rebar tertentu:
GetBandCount Mengambil jumlah pita saat ini dalam kontrol bilah ulang.
GetBandInfo Menginisialisasi struktur REBARBANDINFO dengan informasi dari pita yang ditentukan. Ada fungsi anggota SetBandInfo yang sesuai.
GetRect Mengambil persegi panjang pembatas dari pita tertentu.
GetRowCount Mengambil jumlah baris pita dalam kontrol rebar.
IDToIndex Mengambil indeks pita tertentu.
GetBandBorders Mengambil batas pita.
Selain manipulasi, beberapa fungsi anggota disediakan yang memungkinkan Anda beroperasi pada band rebar tertentu.
InsertBand dan DeleteBand menambahkan dan menghapus pita batang ulang. MinimizeBand dan MaximizeBand memengaruhi ukuran pita rebar tertentu saat ini. MoveBand mengubah indeks band rebar tertentu. ShowBand menampilkan atau menyembunyikan band rebar dari pengguna.
Contoh berikut menunjukkan penambahan pita toolbar (m_wndToolBar) ke kontrol bilah ulang yang ada (m_wndReBar). Pita dijelaskan dengan menginisialisasi rbi
struktur dan kemudian memanggil InsertBand
fungsi anggota:
//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);