CMFCCaptionBar Sınıfı
CMFCCaptionBar
Nesne, üç öğe görüntüleyebilen bir denetim çubuğudur: düğme, metin etiketi ve bit eşlem. Aynı anda her türden yalnızca bir öğe görüntüleyebilir. Her öğeyi denetimin sol veya sağ kenarlarına veya ortaya hizalayabilirsiniz. Resim yazısı çubuğunun üst ve alt kenarlıklarına düz veya 3B stil de uygulayabilirsiniz.
Sözdizimi
class CMFCCaptionBar : public CPane
Üyeler
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMFCCaptionBar::Create | Resim yazısı çubuğu denetimini oluşturur ve nesneye CMFCCaptionBar ekler. |
CMFCCaptionBar::D oesAllowDynInsertBefore | Resim yazısı çubuğuyla üst çerçevesi arasına dinamik olarak başka bir bölme eklenip eklenemeyeceğini gösterir. (Geçersiz Kılmalar CBasePane::D oesAllowDynInsertBefore.) |
CMFCCaptionBar::EnableButton | Resim yazısı çubuğundaki düğmeyi etkinleştirir veya devre dışı bırakır. |
CMFCCaptionBar::GetAlignment | Belirtilen öğenin hizalamasını döndürür. |
CMFCCaptionBar::GetBorderSize | Resim yazısı çubuğunun kenarlık boyutunu döndürür. |
CMFCCaptionBar::GetButtonRect | Resim yazısı çubuğundaki düğmenin sınırlayıcı dikdörtgenini alır. |
CMFCCaptionBar::GetMargin | Resim yazısı çubuğu öğelerinin kenarıyla resim yazısı çubuğu denetiminin kenarı arasındaki uzaklığı döndürür. |
CMFCCaptionBar::IsMessageBarMode | Resim yazısı çubuğunun ileti çubuğu modunda olup olmadığını belirtir. |
CMFCCaptionBar::RemoveBitmap | Resim yazısı çubuğundan bit eşlem görüntüsünü kaldırır. |
CMFCCaptionBar::RemoveButton | Düğmeyi resim yazısı çubuğundan kaldırır. |
CMFCCaptionBar::RemoveIcon | Resim yazısı çubuğundan simgeyi kaldırır. |
CMFCCaptionBar::RemoveText | Resim yazısı çubuğundan metin etiketini kaldırır. |
CMFCCaptionBar::SetBitmap | Resim yazısı çubuğu için bit eşlem görüntüsünü ayarlar. |
CMFCCaptionBar::SetBorderSize | Resim yazısı çubuğunun kenarlık boyutunu ayarlar. |
CMFCCaptionBar::SetButton | Resim yazısı çubuğunun düğmesini ayarlar. |
CMFCCaptionBar::SetButtonPressed | Düğmeye basılıp basılmayacağını belirtir. |
CMFCCaptionBar::SetButtonToolTip | Düğme için araç ipucu ayarlar. |
CMFCCaptionBar::SetFlatBorder | Resim yazısı çubuğunun kenarlık stilini ayarlar. |
CMFCCaptionBar::SetIcon | Resim yazısı çubuğunun simgesini ayarlar. |
CMFCCaptionBar::SetImageToolTip | Resim yazısı çubuğunun resmi için araç ipucu ayarlar. |
CMFCCaptionBar::SetMargin | Resim yazısı çubuğu öğesinin kenarıyla resim yazısı çubuğu denetiminin kenarı arasındaki uzaklığı ayarlar. |
CMFCCaptionBar::SetText | Resim yazısı çubuğu için metin etiketini ayarlar. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMFCCaptionBar::OnDrawBackground | Resim yazısı çubuğunun arka planını doldurmak için çerçeve tarafından çağrılır. |
CMFCCaptionBar::OnDrawBorder | Resim yazısı çubuğunun kenarını çizmek için çerçeve tarafından çağrılır. |
CMFCCaptionBar::OnDrawButton | Resim yazısı çubuğu düğmesini çizmek için çerçeve tarafından çağrılır. |
CMFCCaptionBar::OnDrawImage | Resim yazısı çubuğu görüntüsünü çizmek için çerçeve tarafından çağrılır. |
CMFCCaptionBar::OnDrawText | Resim yazısı çubuğu metnini çizmek için çerçeve tarafından çağrılır. |
Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
CMFCCaptionBar::m_clrBarBackground | Resim yazısı çubuğunun arka plan rengi. |
CMFCCaptionBar::m_clrBarBorder | Resim yazısı çubuğunun kenarlığı rengi. |
CMFCCaptionBar::m_clrBarText | Resim yazısı çubuğu metninin rengi. |
Açıklamalar
Resim yazısı çubuğu oluşturmak için şu adımları izleyin:
Nesnesini oluşturma
CMFCCaptionBar
. Genellikle resim yazısı çubuğunu çerçeve penceresi sınıfına eklersiniz.Resim yazısı çubuğu denetimini oluşturmak ve nesneye eklemek için CMFCCaptionBar::Create yöntemini çağırın
CMFCCaptionBar
.Resim yazısı çubuğu öğelerini ayarlamak için CMFCCaptionBar::SetButton, CMFCCaptionBar::SetText, CMFCCaptionBar::SetIcon ve CMFCCaptionBar::SetBitmap öğelerini çağırın.
Düğme öğesini ayarladığınızda, düğmeye bir komut kimliği atamanız gerekir. Kullanıcı düğmeye tıkladığında, resim yazısı çubuğu bu kimliği içeren WM_COMMAND iletilerini üst çerçeve penceresine yönlendirir.
Resim yazısı çubuğu, Microsoft Office 2007 uygulamalarında görüntülenen ileti çubuğuna öykünen ileti çubuğu modunda da çalışabilir. İleti çubuğu modunda, resim yazısı çubuğunda bit eşlem, ileti ve düğme (genellikle bir iletişim kutusu açılır) görüntülenir. Bit eşlem için bir araç ipucu atayabilirsiniz.
İleti çubuğu modunu etkinleştirmek için CMFCCaptionBar::Create öğesini çağırın ve dördüncü parametreyi (bIsMessageBarMode) TRUE olarak ayarlayın.
Örnek
Aşağıdaki örnekte, sınıftaki çeşitli yöntemlerin nasıl kullanılacağı gösterilmektedir CMFCCaptionBar
. Örnekte resim yazısı çubuğu denetiminin nasıl oluşturulacağı, resim yazısı çubuğunun 3B kenarlığı, resim yazısı çubuğu öğelerinin kenarı ile resim yazısı çubuğu denetiminin kenarı arasındaki uzaklığı piksel cinsinden ayarlama, resim yazısı çubuğu için düğmeyi ayarlama, düğme için araç ipucu ayarlama, resim yazısı çubuğu için metin etiketini ayarlama, resim yazısı çubuğunun bit eşlem görüntüsünü ayarlayın ve resim yazısı çubuğunda resmin araç ipucuna ayarlayın. Bu kod parçacığı MS Office 2007 Tanıtım örneğinin bir parçasıdır.
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;
}
Devralma Hiyerarşisi
Gereksinimler
Üst bilgi: afxcaptionbar.h
CMFCCaptionBar::Create
Resim yazısı çubuğu denetimini oluşturur ve nesneye CMFCCaptionBar
ekler.
BOOL Create(
DWORD dwStyle,
CWnd* pParentWnd,
UINT uID,
int nHeight=-1,
BOOL bIsMessageBarMode=FALSE);
Parametreler
dwStyle
Resim yazısı çubuğu stillerinin mantıksal OR bileşimi.
pParentWnd
Resim yazısı çubuğu denetiminin üst penceresi.
Uıd
Resim yazısı çubuğu denetiminin kimliği.
nHeight
Resim yazısı çubuğu denetiminin piksel cinsinden yüksekliği. -1 ise, yükseklik simgenin yüksekliğine, resim yazısı çubuğu denetiminin görüntülediği metne ve düğmeye göre hesaplanır.
bIsMessageBarMode
Resim yazısı çubuğu ileti çubuğu modundaysa TRUE; FALSE aksi takdirde.
Dönüş Değeri
Resim yazısı çubuğu denetimi başarıyla oluşturulursa TRUE; FALSE aksi takdirde.
Açıklamalar
İki adımda bir CMFCCaptionBar
nesne oluşturursunuz. Önce oluşturucuyu çağırırsınız ve ardından Windows denetimini oluşturan ve nesnesine CMFCCaptionBar
ekleyen yöntemini çağırırsınızCreate
.
CMFCCaptionBar::D oesAllowDynInsertBefore
Resim yazısı çubuğuyla üst çerçevesi arasına dinamik olarak başka bir bölme eklenip eklenemeyeceğini gösterir.
virtual BOOL DoesAllowDynInsertBefore() const;
Dönüş Değeri
Geçersiz kılınmadığı sürece YANLIŞ döndürür.
Açıklamalar
CMFCCaptionBar::EnableButton
Resim yazısı çubuğundaki düğmeyi etkinleştirir veya devre dışı bırakır.
void EnableButton(BOOL bEnable=TRUE);
Parametreler
bEnable
[in] Düğmeyi etkinleştirmek için TRUE, düğmeyi devre dışı bırakmak için YANLIŞ.
CMFCCaptionBar::GetAlignment
Belirtilen öğenin hizalamasını döndürür.
BarElementAlignment GetAlignment(BarElement elem);
Parametreler
Elem
[in] Hizalamanın alındığı resim yazısı çubuğu öğesi.
Dönüş Değeri
Düğme, bit eşlem, metin veya simge gibi bir öğenin hizalaması.
Açıklamalar
öğesinin hizalaması aşağıdaki değerlerden biri olabilir:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER
CMFCCaptionBar::GetBorderSize
Resim yazısı çubuğunun kenarlık boyutunu döndürür.
int GetBorderSize() const;
Dönüş Değeri
Kenarlık boyutu piksel cinsindendir.
CMFCCaptionBar::GetButtonRect
Resim yazısı çubuğundaki düğmenin sınırlayıcı dikdörtgenini alır.
CRect GetButtonRect() const;
Dönüş Değeri
CRect
Resim yazısı çubuğundaki düğmenin sınırlayıcı dikdörtgeninin koordinatlarını içeren nesne.
CMFCCaptionBar::GetMargin
Resim yazısı çubuğu öğelerinin kenarıyla resim yazısı çubuğu denetiminin kenarı arasındaki uzaklığı döndürür.
int GetMargin() const;
Dönüş Değeri
Resim yazısı çubuğu öğelerinin kenarıyla resim yazısı çubuğu denetiminin kenarı arasındaki piksel cinsinden uzaklık.
CMFCCaptionBar::IsMessageBarMode
Resim yazısı çubuğunun ileti çubuğu modunda olup olmadığını belirtir.
BOOL IsMessageBarMode() const;
Dönüş Değeri
Resim yazısı çubuğu ileti çubuğu modundaysa TRUE; FALSE aksi takdirde.
Açıklamalar
İleti çubuğu modunda, resim yazısı çubuğunda araç ipucu, ileti metni ve düğme içeren bir resim görüntülenir.
CMFCCaptionBar::m_clrBarBackground
Resim yazısı çubuğunun arka plan rengi.
COLORREF m_clrBarBackground
CMFCCaptionBar::m_clrBarBorder
Resim yazısı çubuğunun kenarlığı rengi.
COLORREF m_clrBarBorder
CMFCCaptionBar::m_clrBarText
Resim yazısı çubuğu metninin rengi.
COLORREF m_clrBarText
CMFCCaptionBar::OnDrawBackground
Resim yazısı çubuğunun arka planını doldurmak için çerçeve tarafından çağrılır.
virtual void OnDrawBackground(
CDC* pDC,
CRect rect);
Parametreler
pDC
[in] Resim yazısı çubuğunun cihaz bağlamını işaret eden bir işaretçi.
Rect
[in] Doldurulacak sınırlayıcı dikdörtgen.
Açıklamalar
Resim OnDrawBackground
yazısı çubuğunun arka planı doldurulmak üzere olduğunda yöntemi çağrılır. Varsayılan uygulama, CMFCCaptionBar::m_clrBarBackground rengini kullanarak arka planı doldurur.
Açıklamalı alt yazı çubuğunun görünümünü özelleştirmek için türetilmiş bir CMFCCaptionBar
sınıfta bu yöntemi geçersiz kılın.
CMFCCaptionBar::OnDrawBorder
Resim yazısı çubuğunun kenarını çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawBorder(
CDC* pDC,
CRect rect);
Parametreler
pDC
[in] Kenarlıkları görüntülemek için kullanılan cihaz bağlamı.
Rect
[in] Sınırlayıcı dikdörtgen.
Açıklamalar
Varsayılan olarak, kenarlıklar düz stile sahiptir.
Açıklamalı alt yazı çubuğunun kenarlıklarının görünümünü özelleştirmek için türetilmiş bir CMFCCaptionBar
sınıfta bu yöntemi geçersiz kılın.
CMFCCaptionBar::OnDrawButton
Resim yazısı çubuğu düğmesini çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawButton(
CDC* pDC,
CRect rect,
const CString& strButton,
BOOL bEnabled);
Parametreler
pDC
[in] Düğmeyi görüntülemek için kullanılan bir cihaz bağlamı işaretçisi.
Rect
[in] Düğmenin sınırlayıcı dikdörtgeni.
strButton
[in] Düğmenin metin etiketi.
bEnabled
[in] Düğme etkinse TRUE; FALSE aksi takdirde.
Açıklamalar
Açıklamalı alt yazı çubuğunun düğmesinin görünümünü özelleştirmek için türetilmiş bir CMFCCaptionBar
sınıfta bu yöntemi geçersiz kılın.
CMFCCaptionBar::OnDrawImage
Resim yazısı çubuğu görüntüsünü çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawImage(
CDC* pDC,
CRect rect);
Parametreler
pDC
[in] Görüntüyü görüntülemek için kullanılan bir cihaz bağlamı işaretçisi.
Rect
[in] Görüntünün sınırlayıcı dikdörtgenini belirtir.
Açıklamalar
Görüntü görünümünü özelleştirmek için türetilmiş bir CMFCCaptionBar
sınıfta bu yöntemi geçersiz kılın.
CMFCCaptionBar::OnDrawText
Resim yazısı çubuğu metnini çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawText(
CDC* pDC,
CRect rect,
const CString& strText);
Parametreler
pDC
[in] Düğmeyi görüntülemek için kullanılan bir cihaz bağlamı işaretçisi.
Rect
[in] Metnin sınırlayıcı dikdörtgeni.
strText
[in] Görüntülenecek metin dizesi.
Açıklamalar
Varsayılan uygulama, ve CMFCCaptionBar::m_clrBarText rengini kullanarak CDC::DrawText
metni görüntüler.
Açıklamalı alt yazı çubuğunun metninin görünümünü özelleştirmek için türetilmiş bir CMFCCaptionBar
sınıfta bu yöntemi geçersiz kılın.
CMFCCaptionBar::RemoveBitmap
Resim yazısı çubuğundan bit eşlem görüntüsünü kaldırır.
void RemoveBitmap();
CMFCCaptionBar::RemoveButton
Düğmeyi resim yazısı çubuğundan kaldırır.
void RemoveButton();
Açıklamalar
Resim yazısı çubuğu öğelerinin düzeni otomatik olarak ayarlanır.
CMFCCaptionBar::RemoveIcon
Resim yazısı çubuğundan simgeyi kaldırır.
void RemoveIcon();
CMFCCaptionBar::RemoveText
Resim yazısı çubuğundan metin etiketini kaldırır.
void RemoveText();
CMFCCaptionBar::SetBitmap
Resim yazısı çubuğu için bit eşlem görüntüsünü ayarlar.
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);
Parametreler
hBitmap
[in] Ayarlanacağı bit eşlem tutamacı.
clrTransparent
[in] Bit eşlem saydam rengini belirten RGB değeri.
bStretch
[in] TRUE ise, bit eşlem görüntü sınırlayıcı dikdörtgene sığmazsa esnetilir. Aksi takdirde bit eşlem uzatılmaz.
bmpAlignment
[in] Bit eşlem hizalaması.
Açıklamalar
Resim yazısı çubuğunda bit eşlem ayarlamak için bu yöntemi kullanın.
Önceki bit eşlem otomatik olarak yok edilir. CMFCCaptionBar::SetIcon yöntemini çağırdığınız için resim yazısı çubuğunda bir simge görüntüleniyorsa, CMFCCaptionBar::RemoveIcon çağrısı yaparak simgeyi kaldırmadığınız sürece bit eşlem görüntülenmez.
Bit eşlem, bmpAlignment parametresi tarafından belirtilen şekilde hizalanır. Bu parametre aşağıdaki BarElementAlignment
değerlerden biri olabilir:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER
CMFCCaptionBar::SetBorderSize
Resim yazısı çubuğunun kenarlık boyutunu ayarlar.
void SetBorderSize(int nSize);
Parametreler
nSize
[in] Resim yazısı çubuğu kenarlarının piksel cinsinden yeni boyutu.
CMFCCaptionBar::SetButton
Resim yazısı çubuğunun düğmesini ayarlar.
void SetButton(
LPCTSTR lpszLabel,
UINT uiCmdUI,
BarElementAlignment btnAlignmnet=ALIGN_LEFT,
BOOL bHasDropDownArrow=TRUE);
Parametreler
lpszLabel
Düğmenin komut etiketi.
uiCmdUI
Düğmenin komut kimliği.
btnAlignmnet
Düğmenin hizalaması.
bHasDropDownArrow
Düğme bir açılan ok görüntülüyorsa DOĞRU, aksi takdirde YANLIŞ.
CMFCCaptionBar::SetButtonPressed
Düğmeye basılıp basılmayacağını belirtir.
void SetButtonPressed(BOOL bPresed=TRUE);
Parametreler
bPresed
Düğme basılı durumda kalırsa TRUE, aksi takdirde YANLIŞ.
CMFCCaptionBar::SetButtonToolTip
Düğme için araç ipucu ayarlar.
void SetButtonToolTip(
LPCTSTR lpszToolTip,
LPCTSTR lpszDescription=NULL);
Parametreler
lpszToolTip
[in] Araç ipucu resim yazısı.
lpszDescription
[in] Araç ipucu açıklaması.
CMFCCaptionBar::SetFlatBorder
Resim yazısı çubuğunun kenarlık stilini ayarlar.
void SetFlatBorder(BOOL bFlat=TRUE);
Parametreler
bFlat
[in] Resim yazısı çubuğunun kenarlıkları düzse TRUE. Kenarlık 3B ise YANLIŞ.
CMFCCaptionBar::SetIcon
Resim yazısı çubuğunun simgesini ayarlar.
void SetIcon(
HICON hIcon,
BarElementAlignment iconAlignment=ALIGN_RIGHT);
Parametreler
hIcon
[in] Ayarlanacağı simgenin tutamacı.
iconAlignment
[in] Simgenin hizalaması.
Açıklamalar
Resim yazısı çubukları simgeleri veya bit eşlemleri görüntüleyebilir. Bit eşlem görüntülemeyi öğrenmek için bkz . CMFCCaptionBar::SetBitmap . Hem simge hem de bit eşlem ayarlarsanız, simge her zaman görüntülenir. Resim yazısı çubuğundan bir simgeyi kaldırmak için CMFCCaptionBar::RemoveIcon çağrısı yapın.
Simge iconAlignment parametresine göre hizalanır. Aşağıdaki BarElementAlignment
değerlerden biri olabilir:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER
CMFCCaptionBar::SetImageToolTip
Resim yazısı çubuğundaki resim için araç ipucu ayarlar.
void SetImageToolTip(
LPCTSTR lpszToolTip,
LPCTSTR lpszDescription=NULL);
Parametreler
lpszToolTip
[in] Araç ipucu metni.
lpszDescription
[in] Araç ipucu açıklaması.
CMFCCaptionBar::SetMargin
Resim yazısı çubuğu öğesinin kenarıyla resim yazısı çubuğu denetiminin kenarı arasındaki uzaklığı ayarlar.
void SetMargin(int nMargin);
Parametreler
nMargin
[in] Resim yazısı çubuğu öğelerinin kenarıyla resim yazısı çubuğu denetiminin kenarı arasındaki piksel cinsinden uzaklık.
CMFCCaptionBar::SetText
Resim yazısı çubuğu için metin etiketini ayarlar.
void SetText(
const CString& strText,
BarElementAlignment textAlignment=ALIGN_RIGHT);
Parametreler
strText
[in] Ayarlanacağı metin dizesi.
textAlignment
[in] Metin hizalaması.
Açıklamalar
Metin etiketi textAlignment parametresi tarafından belirtilen şekilde hizalanır. Aşağıdaki BarElementAlignment
değerlerden biri olabilir:
ALIGN_INVALID
ALIGN_LEFT
ALIGN_RIGHT
ALIGN_CENTER