Aracılığıyla paylaş


CStatusBar Sınıfı

Metin çıkış bölmeleri veya "göstergeler" içeren bir satır içeren denetim çubuğu.

Sözdizimi

class CStatusBar : public CControlBar

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CStatusBar::CStatusBar Bir CStatusBar nesne oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
CStatusBar::CommandToIndex Belirli bir gösterge kimliği için dizini alır.
CStatusBar::Create Durum çubuğunu oluşturur, nesneye CStatusBar ekler ve ilk yazı tipini ve çubuk yüksekliğini ayarlar.
CStatusBar::CreateEx Katıştırılmış CStatusBarCtrl nesne için ek stiller içeren bir CStatusBar nesne oluşturur.
CStatusBar::D rawItem Sahip çizim durum çubuğu denetiminin görsel bir yönü değiştiğinde çağrılır.
CStatusBar::GetItemID Belirli bir dizin için gösterge kimliğini alır.
CStatusBar::GetItemRect Belirli bir dizin için görüntü dikdörtgeni alır.
CStatusBar::GetPaneInfo Belirli bir dizin için gösterge kimliğini, stilini ve genişliğini alır.
CStatusBar::GetPaneStyle Belirli bir dizin için gösterge stilini alır.
CStatusBar::GetPaneText Belirli bir dizin için gösterge metnini alır.
CStatusBar::GetStatusBarCtrl Temel alınan ortak denetime doğrudan erişime izin verir.
CStatusBar::SetIndicators Gösterge kimliklerini ayarlar.
CStatusBar::SetPaneInfo Belirli bir dizin için gösterge kimliğini, stilini ve genişliğini ayarlar.
CStatusBar::SetPaneStyle Belirli bir dizin için gösterge stilini ayarlar.
CStatusBar::SetPaneText Belirli bir dizin için gösterge metnini ayarlar.

Açıklamalar

Çıkış bölmeleri genellikle ileti satırları ve durum göstergeleri olarak kullanılır. Örnek olarak, seçili menü komutunu kısaca açıklayan menü yardım iletisi satırları ve SCROLL LOCK, NUM LOCK ve diğer tuşların durumunu gösteren göstergeler verilebilir.

MFC 4.0'a yeni eklenen bir üye işlevi olan CStatusBar::GetStatusBarCtrl, Windows ortak denetiminin durum çubuğu özelleştirme ve ek işlevsellik desteğinden yararlanmanızı sağlar. CStatusBar üye işlevleri, Windows ortak denetimlerinin işlevlerinin çoğunu sağlar; ancak çağrısı GetStatusBarCtrlyaptığınızda durum çubuklarınıza Windows 95/98 durum çubuğunun özelliklerinden daha fazlasını verebilirsiniz. çağırdığınızda GetStatusBarCtrl, bir CStatusBarCtrl nesneye başvuru döndürür. Windows ortak denetimlerini kullanarak araç çubukları tasarlama hakkında daha fazla bilgi için bkz . CStatusBarCtrl . Yaygın denetimler hakkında daha fazla genel bilgi için bkz . Windows SDK'sında Ortak Denetimler .

Çerçeve, gösterge bilgilerini en soldaki göstergenin 0 konumunda olduğu bir dizide depolar. Durum çubuğu oluşturduğunuzda, çerçevenin ilgili göstergelerle ilişkilendirtiği bir dizi dize kimliği kullanırsınız. Ardından bir göstergeye erişmek için dize kimliği veya dizin kullanabilirsiniz.

Varsayılan olarak, ilk gösterge "elastik"tir: diğer gösterge bölmeleri tarafından kullanılmayan durum çubuğu uzunluğunu alır, böylece diğer bölmeler sağa hizalanır.

Durum çubuğu oluşturmak için şu adımları izleyin:

  1. Nesnesini oluşturma CStatusBar .

  2. Durum çubuğu penceresini oluşturmak ve nesneye eklemek için Create (veya CreateEx) işlevini çağırınCStatusBar.

  3. Bir dize kimliğini her göstergeyle ilişkilendirmek için SetIndicators'ı çağırın.

Durum çubuğu bölmesindeki metni güncelleştirmenin üç yolu vardır:

  1. Yalnızca 0. bölmedeki metni güncelleştirmek için CWnd::SetWindowText'i çağırın.

  2. Durum çubuğunun ON_UPDATE_COMMAND_UI işleyicisinde CCmdUI::SetText çağrısı yapın.

  3. Herhangi bir bölmenin metnini güncelleştirmek için SetPaneText'i çağırın.

Durum çubuğu bölmesinin stilini güncelleştirmek için SetPaneStyle öğesini çağırın.

kullanma CStatusBarhakkında daha fazla bilgi için MFC'de Durum Çubuğu Uygulaması ve Teknik Not 31 : Denetim Çubukları makalesine bakın.

Devralma Hiyerarşisi

CObject

CCmdTarget

CWnd

CControlBar

CStatusBar

Gereksinimler

Üst bilgi: afxext.h

CStatusBar::CommandToIndex

Belirli bir kimliğin gösterge dizinini alır.

int CommandToIndex(UINT nIDFind) const;

Parametreler

nIDFind
Dizini alınacak göstergenin dize kimliği.

Dönüş Değeri

Başarılı olursa göstergenin dizini; -1 başarılı olmazsa.

Açıklamalar

İlk göstergenin dizini 0'dır.

CStatusBar::Create

Bir durum çubuğu (alt pencere) oluşturur ve bunu nesneyle CStatusBar ilişkilendirir.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM,
    UINT nID = AFX_IDW_STATUS_BAR);

Parametreler

pParentWnd
Windows penceresi durum çubuğunun üst öğesi olan CWnd nesnesinin işaretçisi.

dwStyle
Durum çubuğu stili. Standart Windows stillerine ek olarak, bu stiller desteklenir.

  • CBRS_TOP Denetim çubuğu çerçeve penceresinin en üstündedir.

  • CBRS_BOTTOM Denetim çubuğu çerçeve penceresinin altındadır.

  • CBRS_NOALIGN Üst öğe yeniden boyutlandırıldığında Denetim çubuğu yeniden konumlandırılmaz.

Nıd
Araç çubuğunun alt pencere kimliği.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Ayrıca ilk yazı tipini ayarlar ve durum çubuğunun yüksekliğini varsayılan bir değere ayarlar.

CStatusBar::CreateEx

Durum çubuğu (alt pencere) oluşturmak ve nesneyle ilişkilendirmek için bu işlevi çağırın CStatusBar .

virtual BOOL CreateEx(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle = 0,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM,
    UINT nID = AFX_IDW_STATUS_BAR);

Parametreler

pParentWnd
Windows penceresi durum çubuğunun üst öğesi olan CWnd nesnesinin işaretçisi.

dwCtrlStyle
Katıştırılmış CStatusBarCtrl nesnesinin oluşturulması için ek stiller. Varsayılan ayar, boyutlandırma kavrama veya araç ipucu desteği olmayan bir durum çubuğu belirtir. Desteklenen durum çubuğu stilleri şunlardır:

  • SBARS_SIZEGRIP Durum çubuğu denetimi, durum çubuğunun sağ ucunda bir boyutlandırma kavraması içerir. Boyutlandırma tutamacı boyutlandırma sınırına benzer; kullanıcının üst pencereyi yeniden boyutlandırmak için tıklayıp sürükleyebileceği dikdörtgen bir alandır.

  • SBT_TOOLTIPS Durum çubuğu araç ipuçlarını destekler.

Bu stiller hakkında ayrıntılı bilgi için bkz . CStatusBarCtrl ayarları.

dwStyle
Durum çubuğu stili. Varsayılan değer, çerçeve penceresinin alt kısmında görünür bir durum çubuğunun oluşturulduğunu belirtir. Pencere Stilleri ve CDialogBar::Create içinde listelenen durum çubuğu denetim stillerinin herhangi bir bileşimini uygulayın. Ancak, bu parametre her zaman WS_CHILD ve WS_VISIBLE stillerini içermelidir.

Nıd
Durum çubuğunun alt pencere kimliği.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bu işlev ayrıca ilk yazı tipini ayarlar ve durum çubuğunun yüksekliğini varsayılan bir değere ayarlar.

CreateExKatıştırılmış durum çubuğu denetiminin oluşturulması sırasında belirli stillerin mevcut olması gerektiğinde Oluştur yerine kullanın. Örneğin, bir durum çubuğu nesnesinde araç ipuçlarını görüntülemek için dwCtrlStyle öğesini SBT_TOOLTIPS olarak ayarlayın.

CStatusBar::CStatusBar

Bir CStatusBar nesne oluşturur, gerekirse bir varsayılan durum çubuğu yazı tipi oluşturur ve yazı tipi özelliklerini varsayılan değerlere ayarlar.

CStatusBar();

CStatusBar::D rawItem

Sahip tarafından çizilen durum çubuğunun görsel bir yönü değiştiğinde bu üye işlevi çerçeve tarafından çağrılır.

virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);

Parametreler

lpDrawItemStruct
Gereken çizim türü hakkında bilgi içeren DRAWITEMSTRUCT yapısına yönelik bir işaretçi.

Açıklamalar

Yapının itemAction üyesi DRAWITEMSTRUCT , gerçekleştirilecek çizim eylemini tanımlar. Sahip çizim CStatusBar nesnesi için çizim uygulamak için bu üye işlevini geçersiz kılın. Uygulama, bu üye işlevinin sonlandırılmasından önce lpDrawItemStruct içinde sağlanan görüntü bağlamı için seçilen tüm grafik cihaz arabirimi (GDI) nesnelerini geri yüklemelidir.

CStatusBar::GetItemID

nIndex tarafından belirtilen göstergenin kimliğini döndürür.

UINT GetItemID(int nIndex) const;

Parametreler

nIndex
Kimliği alınacak göstergenin dizini.

Dönüş Değeri

nIndex tarafından belirtilen göstergenin kimliği.

CStatusBar::GetItemRect

nIndex tarafından belirtilen göstergenin koordinatlarını lpRect ile işaret edilen yapıya kopyalar.

void GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

Parametreler

nIndex
Dikdörtgen koordinatları alınacak göstergenin dizini.

lpRect
nIndex tarafından belirtilen göstergenin koordinatlarını alacak bir RECT yapısına veya CRect nesnesine işaret eder.

Açıklamalar

Koordinatlar, durum çubuğunun sol üst köşesine göre piksel cinsindendir.

CStatusBar::GetPaneInfo

nID, nStyle ve cxWidth'i nIndex tarafından belirtilen konumdaki gösterge bölmesinin kimliğine, stiline ve genişliğine ayarlar.

void GetPaneInfo(
    int nIndex,
    UINT& nID,
    UINT& nStyle,
    int& cxWidth) const;

Parametreler

nIndex
Bilgileri alınacak bölme dizini.

Nıd
Bölmenin kimliğine ayarlanmış bir UINT başvurusu.

nStyle
Bölmenin stiline ayarlanmış bir UINT başvurusu.

cxWidth
Bölmenin genişliğine ayarlanmış bir tamsayıya başvuru.

CStatusBar::GetPaneStyle

Durum çubuğunun bölmesinin stilini almak için bu üye işlevini çağırın.

UINT GetPaneStyle(int nIndex) const;

Parametreler

nIndex
Stili alınacak bölmenin dizini.

Dönüş Değeri

nIndex tarafından belirtilen durum çubuğu bölmesinin stili.

Açıklamalar

Bölmenin stili, bölmenin nasıl görüneceğini belirler.

Durum çubukları için kullanılabilen stillerin listesi için bkz . Oluşturma.

CStatusBar::GetPaneText

Durum çubuğu bölmesinde görüntülenen metni almak için bu üye işlevini çağırın.

CString GetPaneText(int nIndex) const;  void GetPaneText(int nIndex, CString& rString) const;

Parametreler

nIndex
Metni alınacak bölmenin dizini.

rString
Alınacak metni içeren bir CString nesnesine başvuru.

Dönüş Değeri

CString Bölme metnini içeren bir nesne.

Açıklamalar

Bu üye işlevinin ikinci biçimi bir CString nesneyi dize metniyle doldurur.

CStatusBar::GetStatusBarCtrl

Bu üye işlevi, temel alınan ortak denetime doğrudan erişim sağlar.

CStatusBarCtrl& GetStatusBarCtrl() const;

Dönüş Değeri

CStatusBarCtrl nesnesine başvuru içerir.

Açıklamalar

Windows durum çubuğu ortak denetiminin işlevselliğinden yararlanmak ve CStatusBarCtrl'in durum çubuğu özelleştirmesi için sağladığı desteklerden yararlanmak için kullanınGetStatusBarCtrl. Örneğin, ortak denetimi kullanarak, durum çubuğunda boyutlandırma kavraması içeren bir stil belirtebilir veya durum çubuğunun üst pencerenin istemci alanının en üstünde görünmesini sağlamak için bir stil belirtebilirsiniz.

Yaygın denetimler hakkında daha fazla genel bilgi için bkz . Windows SDK'sında Ortak Denetimler .

CStatusBar::SetIndicators

Her göstergenin kimliğini lpIDArray dizisinin karşılık gelen öğesi tarafından belirtilen değere ayarlar, her kimlik tarafından belirtilen dize kaynağını yükler ve göstergenin metnini dizeye ayarlar.

BOOL SetIndicators(
    const UINT* lpIDArray,
    int nIDCount);

Parametreler

lpIDArray
Bir kimlik dizisinin işaretçisi.

nIDCount
dizideki lpIDArray tarafından işaret edilen öğe sayısı.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

CStatusBar::SetPaneInfo

Belirtilen gösterge bölmesini yeni bir kimlik, stil ve genişliğe ayarlar.

void SetPaneInfo(
    int nIndex,
    UINT nID,
    UINT nStyle,
    int cxWidth);

Parametreler

nIndex
Stili ayarlanacak gösterge bölmesinin dizini.

Nıd
Gösterge bölmesinin yeni kimliği.

nStyle
Gösterge bölmesi için yeni stil.

cxWidth
Gösterge bölmesi için yeni genişlik.

Açıklamalar

Aşağıdaki gösterge stilleri desteklenir:

  • bölmenin çevresinde 3B kenarlık yok SBPS_NOBORDERS.

  • SBPS_POPOUT Metnin "dışarı çıkması" için kenarlıyı ters çevir'i seçin.

  • SBPS_DISABLED Metin çizmeyin.

  • Kullanılmayan alanı doldurmak için Esnetme bölmesini SBPS_STRETCH. Durum çubuğu başına yalnızca bir bölmede bu stil bulunabilir.

  • SBPS_NORMAL Esnetme, kenarlık veya açılır pencere yok.

CStatusBar::SetPaneStyle

Durum çubuğunun bölmesinin stilini ayarlamak için bu üye işlevini çağırın.

void SetPaneStyle(
    int nIndex,
    UINT nStyle);

Parametreler

nIndex
Stili ayarlanacak bölmenin dizini.

nStyle
Stili ayarlanacak bölmenin stili.

Açıklamalar

Bölmenin stili, bölmenin nasıl görüneceğini belirler.

Durum çubukları için kullanılabilen stillerin listesi için bkz . SetPaneInfo.

CStatusBar::SetPaneText

Bölme metnini lpszNewText tarafından işaret edilen dizeye ayarlamak için bu üye işlevini çağırın.

BOOL SetPaneText(
    int nIndex,
    LPCTSTR lpszNewText,
    BOOL bUpdate = TRUE);

Parametreler

nIndex
Metni ayarlanacak bölmenin dizini.

lpszNewText
Yeni bölme metninin işaretçisi.

bUpdate
TRUE ise, metin ayarlandıktan sonra bölme geçersiz kılınmış olur.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

çağrısı SetPaneTextyaptıktan sonra, yeni metni durum çubuğunda görüntülemek için bir kullanıcı arabirimi güncelleştirme işleyicisi eklemeniz gerekir.

Örnek

//Sets and displays text for pane index 3 and id ID_INDICATOR_SCRL
m_wndStatusBar.SetPaneText(3, _T("My New Status Bar Text"), TRUE);

 

//UI handler in the message map updates the status bar text:
ON_UPDATE_COMMAND_UI(ID_INDICATOR_SCRL, &CMainFrame::OnUpdatePane)

 

void CMainFrame::OnUpdatePane(CCmdUI* pCmdUI)
{
   pCmdUI->Enable();
}

Ayrıca bkz.

MFC Örnek CTRLBAR'ları
MFC Örnek DLGCBR32
CControlBar Sınıfı
Hiyerarşi Grafiği
CStatusBarCtrl Sınıfı
CControlBar Sınıfı