CMFCStatusBar Sınıfı
sınıfı, CMFCStatusBar
sınıfına CStatusBar
benzer bir durum çubuğu uygular. Bununla birlikte, sınıfın CMFCStatusBar
sunduğu görüntüler, animasyonlar ve ilerleme çubukları görüntüleme özelliği ve fare çift tıklamalarına yanıt verme gibi özellikleri CStatusBar
vardır.
Daha fazla ayrıntı için Visual Studio yüklemenizin VC\atlmfc\src\mfc klasöründe bulunan kaynak koduna bakın.
Sözdizimi
class CMFCStatusBar : public CPane
Üyeler
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMFCStatusBar::CalcFixedLayout | (Geçersiz Kılmalar CBasePane::CalcFixedLayout.) |
CMFCStatusBar::CommandToIndex | |
CMFCStatusBar::Create | Bir denetim çubuğu oluşturur ve bunu CPane nesnesine ekler. (Geçersiz Kılmalar CPane::Create.) |
CMFCStatusBar::CreateEx | Bir denetim çubuğu oluşturur ve bunu CPane nesnesine ekler. (Geçersiz Kılmalar CPane::CreateEx.) |
CMFCStatusBar::D oesAllowDynInsertBefore | Bu bölmeyle üst çerçeve arasına dinamik olarak başka bir bölme eklenip eklenemeyeceğini belirler. (Geçersiz Kılmalar CBasePane::D oesAllowDynInsertBefore.) |
CMFCStatusBar::EnablePaneDoubleClick | Durum çubuğunda fare çift tıklamalarının işlenmesini etkinleştirir veya devre dışı bırakır. |
CMFCStatusBar::EnablePaneProgressBar | Belirtilen bölmede bir ilerleme çubuğu görüntüler. |
CMFCStatusBar::GetCount | Durum çubuğundaki bölme sayısını döndürür. |
CMFCStatusBar::GetDrawExtendedArea | |
CMFCStatusBar::GetExtendedArea | |
CMFCStatusBar::GetItemID | |
CMFCStatusBar::GetItemRect | |
CMFCStatusBar::GetPaneInfo | |
CMFCStatusBar::GetPaneProgress | |
CMFCStatusBar::GetPaneStyle | Bölme stilini döndürür. (Geçersiz Kılmalar CBasePane::GetPaneStyle.) |
CMFCStatusBar::GetPaneText | |
CMFCStatusBar::GetPaneWidth | Durum çubuğunun belirtilen bölmesinin genişliğini piksel cinsinden döndürür. |
CMFCStatusBar::GetTipText | Durum çubuğunun belirtilen bölmesi için araç ipucu metnini döndürür. |
CMFCStatusBar::InvalidatePaneContent | Belirtilen bölmeyi geçersiz kılıp içeriğini yeniden çizer. |
CMFCStatusBar::P ReCreateWindow | Bu CWnd nesneye bağlı Windows penceresi oluşturulmadan önce çerçeve tarafından çağrılır. (Geçersiz Kılmalar CWnd::P ReCreateWindow.) |
CMFCStatusBar::SetDrawExtendedArea | |
CMFCStatusBar::SetIndicators | |
CMFCStatusBar::SetPaneAnimation | Belirtilen bölmeye bir animasyon atar. |
CMFCStatusBar::SetPaneBackgroundColor | Durum çubuğunun belirtilen bölmesi için arka plan rengini ayarlar. |
CMFCStatusBar::SetPaneIcon | Durum çubuğunun belirtilen bölmesi için gösterge simgesini ayarlar. |
CMFCStatusBar::SetPaneInfo | |
CMFCStatusBar::SetPaneProgress | Durum çubuğunun belirtilen bölmesi için ilerleme çubuğunun geçerli ilerleme durumunu ayarlar. |
CMFCStatusBar::SetPaneStyle | Bölmenin stilini ayarlar. (Geçersiz Kılmalar CBasePane::SetPaneStyle.) |
CMFCStatusBar::SetPaneText | |
CMFCStatusBar::SetPaneTextColor | Durum çubuğunun belirtilen bölmesi için metin rengini ayarlar. |
CMFCStatusBar::SetPaneWidth | Durum çubuğunun belirtilen bölmesinin genişliğini piksel cinsinden ayarlar. |
CMFCStatusBar::SetTipText | Durum çubuğunun belirtilen bölmesi için araç ipucu metnini ayarlar. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMFCStatusBar::OnDrawPane | Durum çubuğunun bölmesini yeniden çizdiğinde çerçeve tarafından çağrılır. |
Açıklamalar
Aşağıdaki diyagramda Durum Çubuğu Tanıtım örnek uygulamasındaki durum çubuğunun bir şekli gösterilmektedir.
Örnekler
Aşağıdaki örnek, uygulamanın sınıftaki çeşitli yöntemleri CMFCStatusBar
çağırmak için kullandığı yerel değişkenleri gösterir. Bu değişkenler StatusBarDemoView.h içinde bildirilir. Ana çerçeve MainFrm.h'de bildirilir, belge StatusBarDemoDoc.h içinde bildirilir ve görünüm StatusBarDemoView.h içinde bildirilir. Bu kod parçacığı Durum Çubuğu Tanıtım örneğinin bir parçasıdır.
int m_nProgressCurr;
BOOL m_bInProgress;
CImageList m_imlStatusAnimation;
BOOL m_bInAnimation;
CBitmap m_bmpIcon1;
CBitmap m_bmpIcon2;
Aşağıdaki örnekte MainFrm.h dosyasında yöntemini tanıtıp GetStatusBar
StatusBarDemoView.h dosyasındaki yönteminden bu yöntemi çağırarak nesnesine GetStatusBar
nasıl başvuru CMFCStatusBar
alındığı gösterilmektedir. Bu kod parçacığı Durum Çubuğu Tanıtım örneğinin bir parçasıdır.
// in MainFrm.h
public:
CMFCStatusBar &GetStatusBar()
{
return m_wndStatusBar;
}
// in StatusBarDemoView.h
CMFCStatusBar &GetStatusBar() const
{
return ((CMainFrame *)AfxGetMainWnd())->GetStatusBar();
}
Aşağıdaki örnek, StatusBarDemoView.cpp sınıfında çeşitli yöntemlerin CMFCStatusBar
nasıl çağrılduğunu gösterir. Sabitler MainFrm.h içinde bildirilir. Örnekte simgenin nasıl ayarlanacağı, durum çubuğu bölmesinin araç ipucu metninin nasıl ayarlanacağı, belirtilen bölmede ilerleme çubuğu görüntüleme, belirtilen bölmeye animasyon atama, durum çubuğu bölmesinin metnini ve genişliğini ayarlama ve durum çubuğu bölmesinin ilerleme çubuğunun geçerli ilerleme göstergesinin nasıl ayarlanacağı gösterilmektedir. Bu kod parçacığı Durum Çubuğu Tanıtım örneğinin bir parçasıdır.
// in MainFrm.h
const int nStatusIcon = 0;
const int nStatusInfo = 1;
const int nStatusProgress = 2;
const int nStatusLabel = 3;
const int nStatusAnimation = 4;
// in StatusBarDemoView.cpp
GetStatusBar().SetPaneIcon(nStatusIcon, m_bmpIcon1);
GetStatusBar().SetTipText(nStatusIcon, _T("This is a tooltip"));
GetStatusBar().EnablePaneProgressBar(nStatusProgress, PROGRESS_MAX);
GetStatusBar().SetPaneAnimation(nStatusAnimation, NULL);
GetStatusBar().SetPaneAnimation(nStatusAnimation, m_imlStatusAnimation);
GetStatusBar().SetPaneText(nStatusAnimation, _T(""));
GetStatusBar().SetPaneWidth(nStatusAnimation, 16);
GetStatusBar().SetPaneProgress(nStatusProgress, m_nProgressCurr);
Devralma Hiyerarşisi
Gereksinimler
Üst bilgi: afxstatusbar.h
CMFCStatusBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parametreler
[in] bStretch
[in] bHorz
Dönüş Değeri
Açıklamalar
CMFCStatusBar::CommandToIndex
int CommandToIndex(UINT nIDFind) const;
Parametreler
[in] nIDFind
Dönüş Değeri
Açıklamalar
CMFCStatusBar::Create
BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM,
UINT nID = AFX_IDW_STATUS_BAR);
Parametreler
[in] pParentWnd
[in] dwStyle
[in] Nıd
Dönüş Değeri
Açıklamalar
CMFCStatusBar::CreateEx
BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle = 0,
DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM,
UINT nID = AFX_IDW_STATUS_BAR);
Parametreler
[in] pParentWnd
[in] dwCtrlStyle
[in] dwStyle
[in] Nıd
Dönüş Değeri
Açıklamalar
CMFCStatusBar::D oesAllowDynInsertBefore
virtual BOOL DoesAllowDynInsertBefore() const;
Dönüş Değeri
Açıklamalar
CMFCStatusBar::EnablePaneDoubleClick
Durum çubuğunda fare çift tıklamalarının işlenmesini etkinleştirir veya devre dışı bırakır.
void EnablePaneDoubleClick(BOOL bEnable=TRUE);
Parametreler
bEnable
[in] TRUE ise, farenin işlenmesini çift tıklayın. Aksi takdirde farenin işlenmesini devre dışı bırakın çift tıklayın.
Açıklamalar
Durum çubuğu çift tıklamaları işlemek için etkinleştirildiyse Windows, kullanıcı durum çubuğu bölmesine her çift tıklayışında durum çubuğunun sahibine bir kaynak kimliğiyle birlikte WM_COMMAND bildirimini gönderir.
CMFCStatusBar::EnablePaneProgressBar
Belirtilen bölmede bir ilerleme çubuğu görüntüleyin.
void EnablePaneProgressBar(
int nIndex,
long nTotal=100,
BOOL bDisplayText=FALSE,
COLORREF clrBar=-1,
COLORREF clrBarDest=-1,
COLORREF clrProgressText=-1);
Parametreler
nIndex
[in] İlerleme çubuğunun etkinleştirileceği bölmenin dizinini belirtir.
nToplam
[in] İlerleme çubuğu için en büyük değeri belirtir.
bDisplayText
[in] İlerleme çubuğunun geçerli ilerleme değerini görüntüleyip görüntülemeyeceğini belirtir.
clrBar
[in] İlerleme çubuğunun arka plan rengini belirtir.
clrBarDest
[in] İlerleme çubuğu arka planının ikincil rengini belirtir. Gradyan içine karıştırılmış bir renge göre doldurmak için clrBar'dan farklı bir değer kullanın.
clrProgressText
[in] İlerleme çubuğu metninin rengini belirtir.
Açıklamalar
nTotal değerinin -1 olarak ayarlandığı ilerleme çubuğu çağrısını EnablePaneProgressBar
devre dışı bırakmak istiyorsanız. Varsayılan olarak nTotal değeri 100 olarak ayarlanır. Bu nedenle, ilerleme durumunu yüzde olarak görüntülemek için ek hesaplamalara ihtiyacınız yoktur.
İlerleme çubuğunun arka plan renginin gradyan içine karıştırılmış bir renk görüntülemesi için clrBar ve clrBarDest için farklı değerler geçirmeniz gerekir. .
Geçerli ilerleme durumunu ayarlamak için CMFCStatusBar::SetPaneProgress yöntemini çağırın.
CMFCStatusBar::GetCount
Durum çubuğundaki bölme sayısını alır.
int GetCount() const;
Dönüş Değeri
Durum çubuğundaki bölme sayısı.
CMFCStatusBar::GetDrawExtendedArea
BOOL GetDrawExtendedArea() const;
Dönüş Değeri
Açıklamalar
CMFCStatusBar::GetExtendedArea
virtual BOOL GetExtendedArea(CRect& rect) const;
Parametreler
[in] Rect
Dönüş Değeri
Açıklamalar
CMFCStatusBar::GetItemID
UINT GetItemID(int nIndex) const;
Parametreler
[in] nIndex
Dönüş Değeri
Açıklamalar
CMFCStatusBar::GetItemRect
void GetItemRect(
int nIndex,
LPRECT lpRect) const;
Parametreler
[in] nIndex
[in] lpRect
Açıklamalar
CMFCStatusBar::GetPaneInfo
void GetPaneInfo(
int nIndex,
UINT& nID,
UINT& nStyle,
int& cxWidth) const;
Parametreler
[in] nIndex
[in] Nıd
[in] nStyle
[in] cxWidth
Açıklamalar
CMFCStatusBar::GetPaneProgress
long GetPaneProgress(int nIndex) const;
Parametreler
[in] nIndex
Dönüş Değeri
Açıklamalar
CMFCStatusBar::GetPaneStyle
UINT GetPaneStyle(int nIndex) const;
Parametreler
[in] nIndex
Dönüş Değeri
Açıklamalar
CMFCStatusBar::GetPaneText
void GetPaneText(
int nIndex,
CString& s) const;
CString GetPaneText(int nIndex) const;
Parametreler
[in] nIndex
[in] s
Dönüş Değeri
Açıklamalar
CMFCStatusBar::GetPaneWidth
Durum çubuğunun bölmesinin genişliğini alır.
int GetPaneWidth(int nIndex) const;
Parametreler
nIndex
[in] Durum çubuğu bölmesinin dizinini belirtir.
Dönüş Değeri
nIndex'in belirttiği durum çubuğu bölmesinin genişliği; aksi takdirde durum çubuğu bölmesi yoksa sıfır.
CMFCStatusBar::GetTipText
Durum çubuğunun bölmesinin araç ipucu metnini alın.
CString GetTipText(int nIndex) const;
Parametreler
nIndex
[in] Araç ipucu metninin alındığı bölmenin dizinini belirtir.
Dönüş Değeri
nIndex'in belirttiği durum çubuğu bölmesinin araç ipucu metni. Aksi takdirde, belirtilen nIndex için bir durum çubuğu bölmesi yoksa veya araç ipucu metni boşsa boş dize.
CMFCStatusBar::InvalidatePaneContent
Durum çubuğu bölmesini geçersiz kılın ve içeriğini yeniden çizin.
void InvalidatePaneContent(int nIndex);
Parametreler
nIndex
[in] İçeriği geçersiz kılınacak ve yeniden çizilecek bölmenin dizinini belirtir.
Açıklamalar
Durum çubuğu geçersiz kılındığında, yeniden çizilmesi için işaretlenir. Yöntem yönteme bir WM_PAINT iletisi gönderdiğinde UpdateWindow
Windows bunu yeniden çizer OnPaint
.
CMFCStatusBar::OnDrawPane
Durum çubuğunun bölmesini yeniden çizin.
virtual void OnDrawPane(
CDC* pDC,
CMFCStatusBarPaneInfo* pPane);
Parametreler
pDC
[in] Çizim için cihaz bağlamı işaretçisi.
pPane
[in] Yeniden çizilecek bölme hakkındaki bilgileri içeren bir CMFCStatusBarPaneInfo
yapı işaretçisi.
Açıklamalar
Varsayılan olarak, OnDrawPane
bölmenin stiline ve içeriğine göre cihaz bağlamı pDC'sini kullanarak bölmeyi yeniden çizer.
Bir bölmenin görünümünü özelleştirmek için türetilmiş bir CMFCStatusBar
sınıfta bu yöntemi geçersiz kılın.
CMFCStatusBar::P ReCreateWindow
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
Parametreler
[in] bilgisayar bilimi
Dönüş Değeri
Açıklamalar
CMFCStatusBar::SetDrawExtendedArea
void SetDrawExtendedArea(BOOL bSet = TRUE);
Parametreler
[in] bSet
Açıklamalar
CMFCStatusBar::SetIndicators
BOOL SetIndicators(
const UINT* lpIDArray,
int nIDCount);
Parametreler
[in] lpIDArray
[in] nIDCount
Dönüş Değeri
Açıklamalar
CMFCStatusBar::SetPaneAnimation
Belirtilen bölmeye bir animasyon atar.
void SetPaneAnimation(
int nIndex,
HIMAGELIST hImageList,
UINT nFrameRate=500,
BOOL bUpdate=TRUE);
Parametreler
nIndex
[in] Animasyon atamak istediğiniz bölmenin dizinini belirtir.
hImageList
[in] Animasyon karelerini barındıran görüntü listesinin tutamacını belirtir.
nFrameRate
[in] Animasyon için kare hızını milisaniye cinsinden belirtir.
bUpdate
[in] TRUE ise, bölme içeriğini hemen güncelleştirin. Aksi takdirde, bölme içeriği geçersiz kılındığında güncelleştirilir.
Açıklamalar
Geçerli animasyonu devre dışı bırakmak istiyorsanız NULL olarak ayarlanmış olarak çağırın SetPaneAnimation
hImageList
.
CMFCStatusBar::SetPaneBackgroundColor
Durum çubuğu bölmesinin arka plan rengini ayarlar.
void SetPaneBackgroundColor(
int nIndex,
COLORREF clrBackground=(COLORREF)-1,
BOOL bUpdate=TRUE);
Parametreler
nIndex
[in] Yeni arka plan renginin ayarlanacağı bölmenin dizinini belirtir.
clrBackground
[in] Yeni arka plan rengini belirtir.
bUpdate
[in] TRUE ise, bölme içeriğini hemen güncelleştirin. Aksi takdirde, bölme başka bir yöntem tarafından geçersiz kılınana kadar bölme içeriğini güncelleştirmayın.
CMFCStatusBar::SetPaneIcon
Durum çubuğu bölmesinin simgesini ayarlayın.
void SetPaneIcon(
int nIndex,
HICON hIcon,
BOOL bUpdate=TRUE);
void SetPaneIcon(
int nIndex,
HBITMAP hBmp,
COLORREF clrTransparent=RGB(255, 0, 255),
BOOL bUpdate=TRUE);
Parametreler
nIndex
[in] Görüntünün ayarlanacağı bölmenin dizinini belirtir.
hIcon
[in] Bölme görüntüsü olarak ayarlanacak simgenin tutamacını belirtir.
bUpdate
[in] Bölme içeriğinin hemen güncelleştirilip güncelleştirilmeyeceğini belirtir.
hBmp
[in] Bölme görüntüsü olarak ayarlanacak bit eşlem tutamacını belirtir.
clrTransparent
[in] hBmp'nin gösterdiği bit eşlemin saydam rengini belirtir.
Açıklamalar
Bölmenin görüntüsünü ayarlamak için HICON veya HBITMAP'i saydam renkle birlikte geçirebilirsiniz. Görüntüyü daha fazla görüntülemek istemiyorsanız, görüntü tutamacı olarak NULL değerini geçirin.
CMFCStatusBar::SetPaneAnimation tarafından ayarlanan çalışan bir animasyon varsa, animasyon durdurulur.
CMFCStatusBar::SetPaneInfo
void SetPaneInfo(
int nIndex,
UINT nID,
UINT nStyle,
int cxWidth);
Parametreler
[in] nIndex
[in] Nıd
[in] nStyle
[in] cxWidth
Açıklamalar
CMFCStatusBar::SetPaneProgress
Belirtilen bölme için ilerleme çubuğunun geçerli ilerleme göstergesini ayarlayın.
void SetPaneProgress(
int nIndex,
long nCurr,
BOOL bUpdate=TRUE);
Parametreler
nIndex
[in] İlerleme göstergesinin güncelleştirildiği bölmenin dizinini belirtir.
nCurr
[in] İlerleme göstergesinin geçerli değerini belirtir.
bUpdate
[in] Bölmenin hemen güncelleştirilip güncelleştirilmeyeceğini belirtir.
Açıklamalar
Belirtilen bölmedeki ilerleme çubuğu için ilerleme göstergesini güncelleştirmek istediğinizde bu yöntemi çağırın.
Bu işlevi verilen bölmede kullanmak için, önce CMFCStatusBar::EnablePaneProgressBar'ı çağırmanız gerekir.
CMFCStatusBar::SetPaneStyle
void SetPaneStyle(
int nIndex,
UINT nStyle);
Parametreler
[in] nIndex
[in] nStyle
Açıklamalar
CMFCStatusBar::SetPaneText
virtual BOOL SetPaneText(
int nIndex,
LPCTSTR lpszNewText,
BOOL bUpdate = TRUE);
Parametreler
[in] nIndex
[in] lpszNewText
[in] bUpdate
Dönüş Değeri
Açıklamalar
CMFCStatusBar::SetPaneTextColor
Belirtilen bölmenin metin rengini ayarlar.
void SetPaneTextColor(
int nIndex,
COLORREF clrText=(COLORREF)-1,
BOOL bUpdate=TRUE);
Parametreler
nIndex
[in] Yeni metin rengi atamak istediğiniz bölmenin dizinini belirtir.
clrText
[in] Metin rengini belirtir.
bUpdate
[in] TRUE ise, bölme içeriğini hemen güncelleştirin. Aksi takdirde, bölme başka bir yöntem tarafından geçersiz kılınana kadar bölme içeriğini güncelleştirmayın.
CMFCStatusBar::SetPaneWidth
Durum çubuğu bölmesinin genişliğini ayarlayın.
void SetPaneWidth(
int nIndex,
int cx);
Parametreler
nIndex
[in] Yeni genişliğin ayarlanacağı durum çubuğu bölmesinin dizini.
cx
[in] Durum çubuğu bölmesinin piksel cinsinden yeni genişliği.
CMFCStatusBar::SetTipText
Durum çubuğu bölmesinin araç ipucu metnini ayarlayın.
void SetTipText(
int nIndex,
LPCTSTR pszTipText);
Parametreler
nIndex
[in] Araç ipucu metnini atamak istediğiniz bölmenin dizini.
pszTipText
[in] Yeni araç ipucu metni.