Megosztás a következőn keresztül:


CStatusBar osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Vezérlősáv szövegkimeneti panelek sorával vagy "jelzőkkel".

Szemantika

class CStatusBar : public CControlBar

Tagok

Nyilvános konstruktorok

Név Description
CStatusBar::CStatusBar Egy CStatusBar objektumot hoz létre.

Nyilvános metódusok

Név Description
CStatusBar::CommandToIndex Lekéri egy adott mutatóazonosító indexét.
CStatusBar::Létrehozás Létrehozza az állapotsort, csatolja az CStatusBar objektumhoz, és beállítja a kezdeti betűtípust és a sáv magasságát.
CStatusBar::CreateEx Létrehoz egy CStatusBar objektumot további stílusokkal a beágyazott CStatusBarCtrl objektumhoz.
CStatusBar::D rawItem Akkor hívható meg, ha a tulajdonos-rajz állapotsávjának vizuális aspektusa megváltozik.
CStatusBar::GetItemID Lekéri egy adott index mutatóazonosítóját.
CStatusBar::GetItemRect Megjeleníti a téglalapot egy adott indexhez.
CStatusBar::GetPaneInfo Egy adott index mutatóazonosítóját, stílusát és szélességét kéri le.
CStatusBar::GetPaneStyle Lekéri egy adott index mutatóstílusát.
CStatusBar::GetPaneText Lekéri a mutató szövegét egy adott indexhez.
CStatusBar::GetStatusBarCtrl Lehetővé teszi a közvetlen hozzáférést a mögöttes közös vezérlőhöz.
CStatusBar::SetIndicators Jelzőazonosítókat állít be.
CStatusBar::SetPaneInfo Egy adott index mutatóazonosítóját, stílusát és szélességét állítja be.
CStatusBar::SetPaneStyle Egy adott index mutatóstílusát állítja be.
CStatusBar::SetPaneText Egy adott index mutatószövegét állítja be.

Megjegyzések

A kimeneti ablaktáblákat általában üzenetsorként és állapotjelzőként használják. Ilyenek például a menü súgóüzenetsorai, amelyek röviden ismertetik a kijelölt menüparancsot, valamint a SCROLL LOCK, a NUM LOCK és más kulcsok állapotát mutató mutatókat.

CStatusBar::GetStatusBarCtrl, az MFC 4.0-s verziójának új tagfüggvénye lehetővé teszi, hogy kihasználhassa a Windows általános vezérlő által támogatott állapotsor-testreszabást és további funkciókat. CStatusBar a tagfüggvények a Windows általános vezérlőinek legtöbb funkcióját biztosítják; híváskor GetStatusBarCtrlazonban az állapotsávokat még jobban megismerheti a Windows 95/98 állapotsor jellemzői közül. Amikor meghívja GetStatusBarCtrl, az egy objektumra CStatusBarCtrl mutató hivatkozást ad vissza. Az eszköztárak windowsos általános vezérlőkkel való tervezéséről a CStatusBarCtrlben talál további információt. A gyakori vezérlőkkel kapcsolatos általános információkért tekintse meg a Windows SDK Közös vezérlői című témakört.

A keretrendszer egy tömbben tárolja a mutatóadatokat, a bal szélső mutatóval a 0. pozícióban. Állapotsor létrehozásakor sztringazonosítókat tartalmazó tömböt használ, amelyeket a keretrendszer a megfelelő mutatókhoz társít. Ezután használhat sztringazonosítót vagy indexet egy mutató eléréséhez.

Alapértelmezés szerint az első jelző "rugalmas": a többi jelzőpanel által nem használt állapotsáv hosszát veszi fel, hogy a többi panel megfelelően legyen igazítva.

Állapotsor létrehozásához kövesse az alábbi lépéseket:

  1. Hozza létre az CStatusBar objektumot.

  2. Hívja meg a Create (vagy CreateEx) függvényt az állapotsor ablakának létrehozásához és az CStatusBar objektumhoz való csatolásához.

  3. A SetIndicators hívásával sztringazonosítót társíthat az egyes jelölőkhöz.

Az állapotsor panelen háromféleképpen frissítheti a szöveget:

  1. Hívja meg a CWnd::SetWindowText parancsot, hogy csak a 0. ablaktáblában frissítse a szöveget.

  2. CCmdUI hívása::Szöveg beállítása az állapotsor ON_UPDATE_COMMAND_UI kezelőjében.

  3. A SetPaneText hívásával frissítheti bármelyik panel szövegét.

Hívja meg a SetPaneStyle-t egy állapotsor panel stílusának frissítéséhez.

További információ a használatról CStatusBar: Állapotsor implementációja az MFC-ben és Műszaki megjegyzés 31: Vezérlősávok.

Öröklési hierarchia

CObject

CCmdTarget

CWnd

CControlBar

CStatusBar

Requirements

Fejléc: afxext.h

CStatusBar::CommandToIndex

Lekéri egy adott azonosító mutatóindexét.

int CommandToIndex(UINT nIDFind) const;

Paraméterek

nIDFind
Annak a mutatónak a sztringazonosítója, amelynek indexét le kell kérni.

Visszaadott érték

A mutató indexe, ha sikeres; -1, ha nem sikerül.

Megjegyzések

Az első mutató indexe 0.

CStatusBar::Létrehozás

Létrehoz egy állapotsort (egy gyermekablakot), és társítja azt az CStatusBar objektummal.

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

Paraméterek

pParentWnd
Mutasson arra a CWnd objektumra, amelynek Windows ablaka az állapotsor szülője.

dwStyle
Az állapotsor stílusa. A szabványos Windows-stílusok mellett ezek a stílusok is támogatottak.

  • CBRS_TOP vezérlősáv a keretablak tetején található.

  • CBRS_BOTTOM vezérlősáv a keret ablakának alján található.

  • CBRS_NOALIGN vezérlősáv nem lesz áthelyezve a szülő átméretezésekor.

nID
Az eszköztár gyermekablak-azonosítója.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A kezdeti betűtípust is beállítja, és az állapotsor magasságát alapértelmezett értékre állítja.

CStatusBar::CreateEx

Hívja meg ezt a függvényt, hogy hozzon létre egy állapotsort (egy gyermekablakot), és társítsa azt az CStatusBar objektummal.

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

Paraméterek

pParentWnd
Mutasson arra a CWnd objektumra, amelynek Windows ablaka az állapotsor szülője.

dwCtrlStyle
További stílusok a beágyazott CStatusBarCtrl objektum létrehozásához. Az alapértelmezett beállítás egy állapotsort határoz meg méretezési fogó vagy elemleírás-támogatás nélkül. Az állapotsorstílusok támogatottak:

  • SBARS_SIZEGRIP Az állapotsor vezérlőelem az állapotsor jobb végén található méretező fogót tartalmaz. A méretezési fogó hasonló a méretezési szegélyhez; ez egy téglalap alakú terület, amellyel a felhasználó rákattinthat, és húzással átméretezheti a szülőablakot.

  • SBT_TOOLTIPS Az állapotsor támogatja az elemleírásokat.

A stílusokkal kapcsolatos részletekért tekintse meg a CStatusBarCtrl beállításai című témakört.

dwStyle
Az állapotsor stílusa. Az alapértelmezett beállítás azt határozza meg, hogy a keretablak alján látható állapotsor legyen létrehozva. Az ablakstílusok és a CDialogBar::Létrehozás listában felsorolt állapotsáv-vezérlőstílusok bármilyen kombinációját alkalmazhatja. Ennek a paraméternek azonban mindig tartalmaznia kell a WS_CHILD és WS_VISIBLE stílusokat.

nID
Az állapotsor gyermekablak-azonosítója.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ez a függvény a kezdeti betűtípust is beállítja, és az állapotsor magasságát alapértelmezett értékre állítja.

Akkor használja CreateExa Létrehozás helyett, ha bizonyos stílusokat meg kell jeleníteni a beágyazott állapotsor-vezérlő létrehozása során. Például állítsa a dwCtrlStyle-t SBT_TOOLTIPS állapotsor-objektum elemleírásainak megjelenítéséhez.

CStatusBar::CStatusBar

CStatusBar Objektumot hoz létre, szükség esetén létrehoz egy alapértelmezett állapotsor-betűtípust, és alapértelmezett értékre állítja a betűtípus jellemzőit.

CStatusBar();

CStatusBar::D rawItem

Ezt a tagfüggvényt a keretrendszer hívja meg, amikor megváltozik egy tulajdonos által rajzolt állapotsor vizuális aspektusa.

virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);

Paraméterek

lpDrawItemStruct
Mutató egy DRAWITEMSTRUCT-struktúrára , amely a szükséges rajztípussal kapcsolatos információkat tartalmazza.

Megjegyzések

A itemAction struktúra tagja DRAWITEMSTRUCT határozza meg a végrehajtandó rajzműveletet. A tagfüggvény felülbírálása egy tulajdonosi rajzobjektum CStatusBar rajzának implementálásához. Az alkalmazásnak a tagfüggvény megszüntetése előtt vissza kell állítania az lpDrawItemStruct-ben megadott megjelenítési környezethez kiválasztott összes grafikus eszközillesztő (GDI) objektumot.

CStatusBar::GetItemID

Az nIndex által megadott mutató azonosítóját adja vissza.

UINT GetItemID(int nIndex) const;

Paraméterek

nIndex
Annak a mutatónak az indexe, amelynek azonosítóját le kell kérni.

Visszaadott érték

Az nIndex által megadott mutató azonosítója.

CStatusBar::GetItemRect

Másolja az nIndex által megadott mutató koordinátáit az lpRect által mutatott struktúrába.

void GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

Paraméterek

nIndex
Annak a mutatónak az indexe, amelynek téglalap koordinátáit le kell kérni.

lpRect
EGY RECT-struktúrára vagy egy CRect objektumra mutat, amely megkapja az nIndex által megadott mutató koordinátáit.

Megjegyzések

A koordináták képpontban vannak az állapotsor bal felső sarkához képest.

CStatusBar::GetPaneInfo

Az nID, az nStyle és a cxWidth értékét az nIndex által megadott helyen lévő mutatópanel azonosítójára, stílusára és szélességére állítja.

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

Paraméterek

nIndex
Annak a panelnek az indexe, amelynek adatait le kell kérni.

nID
Hivatkozás a panel azonosítójára beállított UINT-ra.

nStyle
Hivatkozás a panel stílusára beállított UINT-ra.

cxWidth
Hivatkozás a panel szélességére beállított egész számra.

CStatusBar::GetPaneStyle

Hívja meg ezt a tagfüggvényt egy állapotsor paneljének stílusának lekéréséhez.

UINT GetPaneStyle(int nIndex) const;

Paraméterek

nIndex
Annak a panelnek az indexe, amelynek a stílusát le kell kérni.

Visszaadott érték

Az nIndex által megadott állapotsáv panel stílusa.

Megjegyzések

Az ablaktábla stílusa határozza meg a panel megjelenését.

Az állapotsávokhoz elérhető stílusok listáját a Létrehozás című témakörben találja.

CStatusBar::GetPaneText

Hívja meg ezt a tagfüggvényt az állapotsor panelen megjelenő szöveg lekéréséhez.

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

Paraméterek

nIndex
Annak a panelnek az indexe, amelynek a szövegét le szeretné kérni.

rString
A lekérendő szöveget tartalmazó CString-objektumra mutató hivatkozás.

Visszaadott érték

A CString panel szövegét tartalmazó objektum.

Megjegyzések

A tagfüggvény második formája kitölt egy objektumot a sztringszöveggel CString .

CStatusBar::GetStatusBarCtrl

Ez a tagfüggvény közvetlen hozzáférést biztosít a mögöttes közös vezérlőhöz.

CStatusBarCtrl& GetStatusBarCtrl() const;

Visszaadott érték

Egy CStatusBarCtrl-objektumra mutató hivatkozást tartalmaz.

Megjegyzések

A GetStatusBarCtrl Windows állapotsáv általános vezérlőjének funkcióinak kihasználására és a CStatusBarCtrl támogatásának kihasználására szolgál az állapotsor testreszabásához. A közös vezérlő használatával például megadhat egy stílust, amely méretező fogót tartalmaz az állapotsoron, vagy megadhat egy stílust, hogy az állapotsor megjelenjen a szülőablak ügyfélterületének tetején.

A gyakori vezérlőkkel kapcsolatos általános információkért lásd a Windows SDK közös vezérlői című témakört.

CStatusBar::SetIndicators

Az egyes mutatók azonosítóját az lpIDArray tömb megfelelő eleme által megadott értékre állítja, betölti az egyes azonosítók által megadott sztringerőforrást, és a mutató szövegét a sztringre állítja.

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

Paraméterek

lpIDArray
Mutató egy azonosítótömbre.

nIDCount
A tömb lpIDArray által mutatott elemeinek száma.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

CStatusBar::SetPaneInfo

A megadott mutatópanelt új azonosítóra, stílusra és szélességre állítja.

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

Paraméterek

nIndex
Annak a mutatópanelnek az indexe, amelynek a stílusát be kell állítani.

nID
A mutatópanel új azonosítója.

nStyle
A mutatópanel új stílusa.

cxWidth
A mutatópanel új szélessége.

Megjegyzések

A következő mutatóstílusok támogatottak:

  • SBPS_NOBORDERS Nincs térhatású szegély a panelen.

  • SBPS_POPOUT Fordított szegélyt, hogy a szöveg "kiugrik" legyen.

  • SBPS_DISABLED Ne rajzoljon szöveget.

  • SBPS_STRETCH Stretch panelt a nem használt terület kitöltéséhez. Az állapotsoronként csak egy panel rendelkezhet ezzel a stílusral.

  • SBPS_NORMAL Nincs kinyúlás, szegély vagy előugró ablak.

CStatusBar::SetPaneStyle

Hívja meg ezt a tagfüggvényt az állapotsor paneljének stílusának beállításához.

void SetPaneStyle(
    int nIndex,
    UINT nStyle);

Paraméterek

nIndex
Annak a panelnek az indexe, amelynek a stílusát be kell állítani.

nStyle
Annak a panelnek a stílusa, amelynek a stílusát be kell állítani.

Megjegyzések

Az ablaktábla stílusa határozza meg a panel megjelenését.

Az állapotsávokhoz elérhető stílusok listáját a SetPaneInfo című témakörben találja.

CStatusBar::SetPaneText

A tagfüggvény meghívásával állítsa a panel szövegét az lpszNewText által mutatott sztringre.

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

Paraméterek

nIndex
Annak a panelnek az indexe, amelynek a szövegét be kell állítani.

lpszNewText
Mutasson az új ablaktábla szövegére.

bUpdate
Ha IGAZ, a panel a szöveg beállítása után érvénytelen lesz.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A hívás SetPaneTextután hozzá kell adnia egy felhasználói felületi frissítéskezelőt az új szöveg állapotsoron való megjelenítéséhez.

Example

//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();
}

Lásd még

MFC-minta CTRLBARS
MFC-minta DLGCBR32
CControlBar osztály
hierarchiadiagram
CStatusBarCtrl osztály
CControlBar osztály