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ı GetStatusBarCtrl
yaptığı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:
Nesnesini oluşturma
CStatusBar
.Durum çubuğu penceresini oluşturmak ve nesneye eklemek için Create (veya CreateEx) işlevini çağırın
CStatusBar
.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:
Yalnızca 0. bölmedeki metni güncelleştirmek için CWnd::SetWindowText'i çağırın.
Durum çubuğunun ON_UPDATE_COMMAND_UI işleyicisinde CCmdUI::SetText çağrısı yapın.
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 CStatusBar
hakkında daha fazla bilgi için MFC'de Durum Çubuğu Uygulaması ve Teknik Not 31 : Denetim Çubukları makalesine bakın.
Devralma Hiyerarşisi
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.
CreateEx
Katış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ı SetPaneText
yaptı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ı