Bagikan melalui


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:

  1. Buat CMFCCaptionBar objek. Biasanya, Anda akan menambahkan bilah keterangan ke kelas jendela bingkai.

  2. Panggil CMFCCaptionBar::Buat metode untuk membuat kontrol bilah keterangan dan lampirkan ke CMFCCaptionBar objek.

  3. 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

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCCaptionBar

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

Lihat juga

Bagan Hierarki
Kelas