Kelas CMFCCaptionBar
Objek CMFCCaptionBar
adalah bilah kontrol yang dapat menampilkan tiga elemen: tombol, label teks, dan bitmap. Ini hanya dapat menampilkan satu elemen dari setiap jenis pada satu waktu. Anda dapat meratakan setiap elemen ke tepi kiri atau kanan kontrol atau ke tengah. Anda juga dapat menerapkan gaya datar atau 3D ke batas atas dan bawah bilah keterangan.
Sintaks
class CMFCCaptionBar : public CPane
Anggota
Metode Publik
Nama | Deskripsi |
---|---|
CMFCCaptionBar::Create | Membuat kontrol bilah keterangan dan melampirkannya ke CMFCCaptionBar objek. |
CMFCCaptionBar::D oesAllowDynInsertBefore | Menunjukkan apakah panel lain dapat disisipkan secara dinamis antara bilah keterangan dan bingkai induknya. (Penimpaan CBasePane::D oesAllowDynInsertBefore.) |
CMFCCaptionBar::EnableButton | Mengaktifkan atau menonaktifkan tombol pada bilah keterangan. |
CMFCCaptionBar::GetAlignment | Mengembalikan perataan elemen yang ditentukan. |
CMFCCaptionBar::GetBorderSize | Mengembalikan ukuran batas bilah keterangan. |
CMFCCaptionBar::GetButtonRect | Mengambil persegi panjang pembatas tombol pada bilah keterangan. |
CMFCCaptionBar::GetMargin | Mengembalikan jarak antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan. |
CMFCCaptionBar::IsMessageBarMode | Menentukan apakah bilah keterangan berada dalam mode bilah pesan. |
CMFCCaptionBar::RemoveBitmap | Menghapus gambar bitmap dari bilah keterangan. |
CMFCCaptionBar::RemoveButton | Menghapus tombol dari bilah keterangan. |
CMFCCaptionBar::Removeicon | Menghapus ikon dari bilah keterangan. |
CMFCCaptionBar::RemoveText | Menghapus label teks dari bilah keterangan. |
CMFCCaptionBar::SetBitmap | Mengatur gambar bitmap untuk bilah keterangan. |
CMFCCaptionBar::SetBorderSize | Mengatur ukuran batas bilah keterangan. |
CMFCCaptionBar::SetButton | Mengatur tombol untuk bilah keterangan. |
CMFCCaptionBar::SetButtonPressed | Menentukan apakah tombol tetap ditekan. |
CMFCCaptionBar::SetButtonToolTip | Mengatur tipsalat untuk tombol . |
CMFCCaptionBar::SetFlatBorder | Mengatur gaya batas bilah keterangan. |
CMFCCaptionBar::Seticon | Mengatur ikon untuk bilah keterangan. |
CMFCCaptionBar::SetImageToolTip | Mengatur tipsalat untuk gambar untuk bilah keterangan. |
CMFCCaptionBar::SetMargin | Mengatur jarak antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan. |
CMFCCaptionBar::SetText | Mengatur label teks untuk bilah keterangan. |
Metode yang Dilindungi
Nama | Deskripsi |
---|---|
CMFCCaptionBar::OnDrawBackground | Dipanggil oleh kerangka kerja untuk mengisi latar belakang bilah keterangan. |
CMFCCaptionBar::OnDrawBorder | Dipanggil oleh kerangka kerja untuk menggambar batas bilah keterangan. |
CMFCCaptionBar::OnDrawButton | Dipanggil oleh kerangka kerja untuk menggambar tombol bilah keterangan. |
CMFCCaptionBar::OnDrawImage | Dipanggil oleh kerangka kerja untuk menggambar gambar bilah keterangan. |
CMFCCaptionBar::OnDrawText | Dipanggil oleh kerangka kerja untuk menggambar teks bilah keterangan. |
Anggota Data
Nama | Deskripsi |
---|---|
CMFCCaptionBar::m_clrBarBackground | Warna latar belakang bilah keterangan. |
CMFCCaptionBar::m_clrBarBorder | Warna batas bilah keterangan. |
CMFCCaptionBar::m_clrBarText | Warna teks bilah keterangan. |
Keterangan
Untuk membuat bilah keterangan, ikuti langkah-langkah berikut:
Buat
CMFCCaptionBar
objek. Biasanya, Anda akan menambahkan bilah keterangan ke kelas jendela bingkai.Panggil CMFCCaptionBar::Buat metode untuk membuat kontrol bilah keterangan dan lampirkan ke
CMFCCaptionBar
objek.Panggil CMFCCaptionBar::SetButton, CMFCCaptionBar::SetText, CMFCCaptionBar::SetIcon, dan CMFCCaptionBar::SetBitmap untuk mengatur elemen bilah keterangan.
Saat Anda mengatur elemen tombol, Anda harus menetapkan ID perintah ke tombol . Saat pengguna mengklik tombol , bilah keterangan merutekan pesan WM_COMMAND yang memiliki ID ini ke jendela bingkai induk.
Bilah keterangan juga dapat berfungsi dalam mode bilah pesan, yang menimulasi bilah pesan yang muncul di aplikasi Microsoft Office 2007. Dalam mode bilah pesan, bilah keterangan menampilkan bitmap, pesan, dan tombol (yang biasanya membuka kotak dialog.) Anda dapat menetapkan tipsalat ke bitmap.
Untuk mengaktifkan mode bilah pesan, panggil CMFCCaptionBar::Create dan atur parameter keempat (bIsMessageBarMode) ke TRUE.
Contoh
Contoh berikut menunjukkan cara menggunakan berbagai metode di CMFCCaptionBar
kelas . Contoh menunjukkan cara membuat kontrol bilah keterangan, mengatur batas 3D bilah keterangan, mengatur jarak, dalam piksel, antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan, atur tombol untuk bilah keterangan, atur tipsalat untuk tombol, atur label teks untuk bilah keterangan, atur gambar bitmap untuk bilah keterangan, dan atur tipsalat untuk gambar di bilah keterangan. Cuplikan kode ini adalah bagian dari sampel Demo MS Office 2007.
CMFCCaptionBar m_wndMessageBar;
BOOL CMainFrame::CreateMessageBar()
{
// The this pointer points to a CMainFrame class which extends the CFrameWndEx class.
if (!m_wndMessageBar.Create(WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS, this, ID_VIEW_MESSAGEBAR, -1, TRUE))
{
TRACE0("Failed to create caption bar\n");
return FALSE;
}
m_wndMessageBar.SetFlatBorder(FALSE);
m_wndMessageBar.SetMargin(10);
m_wndMessageBar.SetButton(_T("Options..."), ID_TOOLS_OPTIONS, CMFCCaptionBar::ALIGN_LEFT, FALSE);
m_wndMessageBar.SetButtonToolTip(_T("Click here to see more options"));
m_wndMessageBar.SetText(_T("Welcome to the MFC MSOffice2007 demonstration!"), CMFCCaptionBar::ALIGN_LEFT);
m_wndMessageBar.SetBitmap(IDB_INFO, RGB(255, 255, 255), FALSE, CMFCCaptionBar::ALIGN_LEFT);
m_wndMessageBar.SetImageToolTip(_T("Important"), _T("Please take a look at MSOffice2007Demo source code to learn how to create advanced user interface in minutes."));
return TRUE;
}
Hierarki Warisan
Persyaratan
Header: afxcaptionbar.h
CMFCCaptionBar::Create
Membuat kontrol bilah keterangan dan melampirkannya ke CMFCCaptionBar
objek.
BOOL Create(
DWORD dwStyle,
CWnd* pParentWnd,
UINT uID,
int nHeight=-1,
BOOL bIsMessageBarMode=FALSE);
Parameter
dwStyle
Kombinasi LOGIS ATAU dari gaya bilah keterangan.
pParentWnd
Jendela induk kontrol bilah keterangan.
Uid
ID kontrol bilah keterangan.
nHeight
Tinggi, dalam piksel, dari kontrol bilah keterangan. Jika -1, tinggi dihitung sesuai dengan tinggi ikon, teks dan tombol yang ditampilkan kontrol bilah keterangan.
bIsMessageBarMode
TRUE jika bilah keterangan berada dalam mode bilah pesan; FALSE jika tidak.
Tampilkan Nilai
TRUE jika kontrol bilah keterangan berhasil dibuat; FALSE jika tidak.
Keterangan
Anda membuat CMFCCaptionBar
objek dalam dua langkah. Pertama Anda memanggil konstruktor, dan kemudian Anda memanggil Create
metode , yang membuat kontrol Windows dan melampirkannya ke CMFCCaptionBar
objek .
CMFCCaptionBar::D oesAllowDynInsertBefore
Menunjukkan apakah panel lain dapat disisipkan secara dinamis antara bilah keterangan dan bingkai induknya.
virtual BOOL DoesAllowDynInsertBefore() const;
Tampilkan Nilai
Mengembalikan FALSE kecuali ditimpa.
Keterangan
CMFCCaptionBar::EnableButton
Mengaktifkan atau menonaktifkan tombol pada bilah keterangan.
void EnableButton(BOOL bEnable=TRUE);
Parameter
bEnable
[di] TRUE untuk mengaktifkan tombol , FALSE untuk menonaktifkan tombol .
CMFCCaptionBar::GetAlignment
Mengembalikan perataan elemen yang ditentukan.
BarElementAlignment GetAlignment(BarElement elem);
Parameter
elem
[di] Elemen bilah keterangan untuk mengambil perataan.
Tampilkan Nilai
Perataan elemen, seperti tombol, bitmap, teks, atau ikon.
Keterangan
Perataan elemen bisa menjadi salah satu nilai berikut:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER
CMFCCaptionBar::GetBorderSize
Mengembalikan ukuran batas bilah keterangan.
int GetBorderSize() const;
Tampilkan Nilai
Ukuran, dalam piksel, dari batas.
CMFCCaptionBar::GetButtonRect
Mengambil persegi panjang pembatas tombol pada bilah keterangan.
CRect GetButtonRect() const;
Tampilkan Nilai
Objek CRect
yang berisi koordinat persegi panjang pembatas tombol pada bilah keterangan.
CMFCCaptionBar::GetMargin
Mengembalikan jarak antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan.
int GetMargin() const;
Tampilkan Nilai
Jarak, dalam piksel, antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan.
CMFCCaptionBar::IsMessageBarMode
Menentukan apakah bilah keterangan berada dalam mode bilah pesan.
BOOL IsMessageBarMode() const;
Tampilkan Nilai
TRUE jika bilah keterangan berada dalam mode bilah pesan; FALSE jika tidak.
Keterangan
Dalam mode bilah pesan, bilah keterangan menampilkan gambar dengan tipsalat, teks pesan, dan tombol.
CMFCCaptionBar::m_clrBarBackground
Warna latar belakang bilah keterangan.
COLORREF m_clrBarBackground
CMFCCaptionBar::m_clrBarBorder
Warna batas bilah keterangan.
COLORREF m_clrBarBorder
CMFCCaptionBar::m_clrBarText
Warna teks bilah keterangan.
COLORREF m_clrBarText
CMFCCaptionBar::OnDrawBackground
Dipanggil oleh kerangka kerja untuk mengisi latar belakang bilah keterangan.
virtual void OnDrawBackground(
CDC* pDC,
CRect rect);
Parameter
pDC
[di] Penunjuk ke konteks perangkat bilah keterangan.
rect
[di] Persegi panjang pembatas untuk diisi.
Keterangan
Metode OnDrawBackground
ini dipanggil ketika latar belakang bilah keterangan akan diisi. Implementasi default mengisi latar belakang dengan menggunakan warna CMFCCaptionBar::m_clrBarBackground .
Ambil alih metode ini di CMFCCaptionBar
kelas turunan untuk menyesuaikan tampilan bilah keterangan.
CMFCCaptionBar::OnDrawBorder
Dipanggil oleh kerangka kerja untuk menggambar batas bilah keterangan.
virtual void OnDrawBorder(
CDC* pDC,
CRect rect);
Parameter
pDC
[di] Konteks perangkat yang digunakan untuk menampilkan batas.
rect
[di] Persegi panjang pembatas.
Keterangan
Secara default, batas memiliki gaya datar.
Ambil alih metode ini di CMFCCaptionBar
kelas turunan untuk menyesuaikan tampilan batas bilah keterangan.
CMFCCaptionBar::OnDrawButton
Dipanggil oleh kerangka kerja untuk menggambar tombol bilah keterangan.
virtual void OnDrawButton(
CDC* pDC,
CRect rect,
const CString& strButton,
BOOL bEnabled);
Parameter
pDC
[di] Penunjuk ke konteks perangkat yang digunakan untuk menampilkan tombol.
rect
[di] Persegi panjang pembatas tombol.
strButton
[di] Label teks tombol.
bEnabled
[di] TRUE jika tombol diaktifkan; FALSE jika tidak.
Keterangan
Ambil alih metode ini dalam CMFCCaptionBar
kelas turunan untuk menyesuaikan tampilan tombol bilah keterangan.
CMFCCaptionBar::OnDrawImage
Dipanggil oleh kerangka kerja untuk menggambar gambar bilah keterangan.
virtual void OnDrawImage(
CDC* pDC,
CRect rect);
Parameter
pDC
[di] Penunjuk ke konteks perangkat yang digunakan untuk menampilkan gambar.
rect
[di] Menentukan persegi panjang pembatas gambar.
Keterangan
Ambil alih metode ini di CMFCCaptionBar
kelas turunan untuk menyesuaikan tampilan gambar.
CMFCCaptionBar::OnDrawText
Dipanggil oleh kerangka kerja untuk menggambar teks bilah keterangan.
virtual void OnDrawText(
CDC* pDC,
CRect rect,
const CString& strText);
Parameter
pDC
[di] Penunjuk ke konteks perangkat yang digunakan untuk menampilkan tombol.
rect
[di] Persegi panjang pembatas teks.
strText
[di] String teks yang akan ditampilkan.
Keterangan
Implementasi default menampilkan teks dengan menggunakan CDC::DrawText
dan CMFCCaptionBar::m_clrBarText warna.
Ambil alih metode ini di CMFCCaptionBar
kelas turunan untuk menyesuaikan tampilan teks bilah keterangan.
CMFCCaptionBar::RemoveBitmap
Menghapus gambar bitmap dari bilah keterangan.
void RemoveBitmap();
CMFCCaptionBar::RemoveButton
Menghapus tombol dari bilah keterangan.
void RemoveButton();
Keterangan
Tata letak elemen bilah keterangan disesuaikan secara otomatis.
CMFCCaptionBar::Removeicon
Menghapus ikon dari bilah keterangan.
void RemoveIcon();
CMFCCaptionBar::RemoveText
Menghapus label teks dari bilah keterangan.
void RemoveText();
CMFCCaptionBar::SetBitmap
Mengatur gambar bitmap untuk bilah keterangan.
void SetBitmap(
HBITMAP hBitmap,
COLORREF clrTransparent,
BOOL bStretch=FALSE,
BarElementAlignment bmpAlignment=ALIGN_RIGHT);
void SetBitmap(
UINT uiBmpResID,
COLORREF clrTransparent,
BOOL bStretch=FALSE,
BarElementAlignment bmpAlignment=ALIGN_RIGHT);
Parameter
hBitmap
[di] Handel ke bitmap yang akan diatur.
clrTransparent
[di] Nilai RGB yang menentukan warna transparan bitmap.
bStretch
[di] Jika TRUE, bitmap direntangkan jika tidak sesuai dengan persegi panjang pembatas gambar. Jika tidak, bitmap tidak direntangkan.
bmpAlignment
[di] Perataan bitmap.
Keterangan
Gunakan metode ini untuk mengatur bitmap pada bilah keterangan.
Bitmap sebelumnya dihancurkan secara otomatis. Jika bilah keterangan menampilkan ikon karena Anda memanggil metode CMFCCaptionBar::SetIcon , bitmap tidak akan ditampilkan kecuali Anda menghapus ikon dengan memanggil CMFCCaptionBar::RemoveIcon.
Bitmap diselaraskan seperti yang ditentukan oleh parameter bmpAlignment . Parameter ini bisa menjadi salah satu nilai berikut BarElementAlignment
:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER
CMFCCaptionBar::SetBorderSize
Mengatur ukuran batas bilah keterangan.
void SetBorderSize(int nSize);
Parameter
nSize
[di] Ukuran baru, dalam piksel, dari batas bilah keterangan.
CMFCCaptionBar::SetButton
Mengatur tombol untuk bilah keterangan.
void SetButton(
LPCTSTR lpszLabel,
UINT uiCmdUI,
BarElementAlignment btnAlignmnet=ALIGN_LEFT,
BOOL bHasDropDownArrow=TRUE);
Parameter
lpszLabel
Label perintah tombol.
uiCmdUI
ID perintah tombol.
btnAlignmnet
Perataan tombol.
bHasDropDownArrow
TRUE jika tombol menampilkan panah turun bawah, FALSE jika tidak.
CMFCCaptionBar::SetButtonPressed
Menentukan apakah tombol tetap ditekan.
void SetButtonPressed(BOOL bPresed=TRUE);
Parameter
bPresed
TRUE jika tombol mempertahankan status yang ditekan, FALSE jika tidak.
CMFCCaptionBar::SetButtonToolTip
Mengatur tipsalat untuk tombol .
void SetButtonToolTip(
LPCTSTR lpszToolTip,
LPCTSTR lpszDescription=NULL);
Parameter
lpszToolTip
[di] Keterangan tipsalat.
lpszDescription
[di] Deskripsi tipsalat.
CMFCCaptionBar::SetFlatBorder
Mengatur gaya batas bilah keterangan.
void SetFlatBorder(BOOL bFlat=TRUE);
Parameter
bFlat
[di] TRUE jika batas bilah keterangan datar. FALSE jika batas adalah 3D.
CMFCCaptionBar::Seticon
Mengatur ikon untuk bilah keterangan.
void SetIcon(
HICON hIcon,
BarElementAlignment iconAlignment=ALIGN_RIGHT);
Parameter
hIcon
[di] Handel ke ikon yang akan diatur.
iconAlignment
[di] Perataan ikon.
Keterangan
Bilah keterangan dapat menampilkan ikon atau bitmap. Lihat CMFCCaptionBar::SetBitmap untuk mengetahui cara menampilkan bitmap. Jika Anda mengatur ikon dan bitmap, ikon selalu ditampilkan. Panggil CMFCCaptionBar::RemoveIcon untuk menghapus ikon dari bilah keterangan.
Ikon diratakan sesuai dengan parameter iconAlignment . Ini bisa menjadi salah satu nilai berikut BarElementAlignment
:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER
CMFCCaptionBar::SetImageToolTip
Mengatur tipsalat untuk gambar di bilah keterangan.
void SetImageToolTip(
LPCTSTR lpszToolTip,
LPCTSTR lpszDescription=NULL);
Parameter
lpszToolTip
[di] Teks tipsalat.
lpszDescription
[di] Deskripsi tipsalat.
CMFCCaptionBar::SetMargin
Mengatur jarak antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan.
void SetMargin(int nMargin);
Parameter
nMargin
[di] Jarak, dalam piksel, antara tepi elemen bilah keterangan dan tepi kontrol bilah keterangan.
CMFCCaptionBar::SetText
Mengatur label teks untuk bilah keterangan.
void SetText(
const CString& strText,
BarElementAlignment textAlignment=ALIGN_RIGHT);
Parameter
strText
[di] String teks yang akan diatur.
textAlignment
[di] Perataan teks.
Keterangan
Label teks diratakan seperti yang ditentukan oleh parameter textAlignment . Ini bisa menjadi salah satu nilai berikut BarElementAlignment
:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER