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


CMFCCaptionBar 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.

Az CMFCCaptionBar objektum egy vezérlősáv, amely három elemet jeleníthet meg: egy gombot, egy szövegfeliratot és egy bitképet. Egyszerre csak az egyes típusok egy eleme jeleníthető meg. Minden elemet igazíthat a vezérlő bal vagy jobb széléhez vagy középre. Lapos vagy 3D stílust is alkalmazhat a feliratsáv felső és alsó szegélyére.

Szemantika

class CMFCCaptionBar : public CPane

Tagok

Nyilvános metódusok

Név Description
CMFCCaptionBar::Létrehozás Létrehozza a feliratsáv vezérlőt, és csatolja az CMFCCaptionBar objektumhoz.
CMFCCaptionBar::D oesAllowDynInsertBefore Azt jelzi, hogy egy másik ablaktábla dinamikusan beszúrható-e a feliratsáv és a szülőkeret közé. (Felülbírálja a CBasePane::D oesAllowDynInsertBefore.)
CMFCCaptionBar::EnableButton Engedélyezi vagy letiltja a feliratsávon lévő gombot.
CMFCCaptionBar::GetAlignment A megadott elem igazítását adja vissza.
CMFCCaptionBar::GetBorderSize A feliratsáv szegélyméretét adja vissza.
CMFCCaptionBar::GetButtonRect Lekéri a feliratsávon lévő gomb határolókeretét.
CMFCCaptionBar::GetMargin A feliratsáv elemeinek széle és a feliratsáv vezérlőelem széle közötti távolságot adja vissza.
CMFCCaptionBar::IsMessageBarMode Megadja, hogy a feliratsáv az üzenetsáv módban van-e.
CMFCCaptionBar::RemoveBitmap Eltávolítja a bitképet a feliratsávról.
CMFCCaptionBar::RemoveButton Eltávolítja a gombot a feliratsávról.
CMFCCaptionBar::RemoveIcon Eltávolítja az ikont a feliratsávról.
CMFCCaptionBar::RemoveText Eltávolítja a szövegfeliratot a feliratsávról.
CMFCCaptionBar::SetBitmap Beállítja a feliratsáv bitképét.
CMFCCaptionBar::SetBorderSize Beállítja a feliratsáv szegélyméretét.
CMFCCaptionBar::SetButton Beállítja a feliratsáv gombját.
CMFCCaptionBar::SetButtonPressed Megadja, hogy a gomb lenyomva marad-e.
CMFCCaptionBar::SetButtonToolTip Beállítja a gomb elemleírását.
CMFCCaptionBar::SetFlatBorder Beállítja a feliratsáv szegélystílusát.
CMFCCaptionBar::SetIcon A feliratsáv ikonjának beállítása.
CMFCCaptionBar::SetImageToolTip Beállítja a kép elemleírását a feliratsávhoz.
CMFCCaptionBar::SetMargin Beállítja a feliratsáv elemének széle és a feliratsáv vezérlőelem széle közötti távolságot.
CMFCCaptionBar::SetText Beállítja a feliratsáv szövegfeliratát.

Védett metódusok

Név Description
CMFCCaptionBar::OnDrawBackground A keretrendszer meghívta, hogy kitöltse a feliratsáv hátterét.
CMFCCaptionBar::OnDrawBorder A keretrendszer meghívta, hogy rajzolja meg a feliratsáv szegélyét.
CMFCCaptionBar::OnDrawButton A keretrendszer meghívta a feliratsáv gombjának rajzolásához.
CMFCCaptionBar::OnDrawImage A keretrendszer meghívta a feliratsáv képének rajzolásához.
CMFCCaptionBar::OnDrawText A keretrendszer meghívta a feliratsáv szövegének rajzolásához.

Adattagok

Név Description
CMFCCaptionBar::m_clrBarBackground A feliratsáv háttérszíne.
CMFCCaptionBar::m_clrBarBorder A feliratsáv szegélyének színe.
CMFCCaptionBar::m_clrBarText A feliratsáv szövegének színe.

Megjegyzések

Feliratsáv létrehozásához kövesse az alábbi lépéseket:

  1. Hozza létre az CMFCCaptionBar objektumot. A feliratsávot általában egy keretablak-osztályhoz kell hozzáadni.

  2. Hívja meg a CMFCCaptionBar::Create metódust a feliratsáv vezérlőelem létrehozásához és az CMFCCaptionBar objektumhoz való csatolásához.

  3. Hívja meg a CMFCCaptionBar::SetButton, CMFCCaptionBar::SetText, CMFCCaptionBar::SetIcon és CMFCCaptionBar::SetBitmap függvényt a feliratsáv elemeinek beállításához.

A gombelem beállításakor hozzá kell rendelnie egy parancsazonosítót a gombhoz. Amikor a felhasználó a gombra kattint, a feliratsáv átirányítja a WM_COMMAND az azonosítóval rendelkező üzeneteket a szülőkeret ablakához.

A feliratsáv üzenetsáv módban is működik, amely a Microsoft Office 2007-alkalmazásokban megjelenő üzenetsávot emulálja. Üzenetsáv módban a feliratsáv egy bitképet, egy üzenetet és egy gombot jelenít meg (amely általában megnyitja a párbeszédpanelt.) Elemleírást rendelhet a bitképhez.

Az üzenetsáv mód engedélyezéséhez hívja meg a CMFCCaptionBar::Create and set the fourth paramétert (bIsMessageBarMode) IGAZ értékre.

Example

Az alábbi példa bemutatja, hogyan használhat különböző metódusokat az CMFCCaptionBar osztályban. A példa bemutatja, hogyan hozható létre a feliratsáv vezérlője, hogyan állíthatja be a feliratsáv 3D szegélyét, hogyan állíthatja be képpontban a feliratsáv elemeinek széle és a feliratsáv vezérlőelem széle közötti távolságot, hogyan állíthatja be a feliratsáv gombját, hogyan állíthatja be a gomb elemleírását, hogyan állíthatja be a feliratsáv szövegfeliratát, állítsa be a képfeliratsáv bitképét, és állítsa be a kép elemleírását a feliratsávon. Ez a kódrészlet az MS Office 2007 Demo minta része.

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;
}

Öröklési hierarchia

CObject

CCmdTarget

CWnd

CBasePane

CPane

CMFCCaptionBar

Requirements

Fejléc: afxcaptionbar.h

CMFCCaptionBar::Létrehozás

Létrehozza a feliratsáv vezérlőt, és csatolja az CMFCCaptionBar objektumhoz.

BOOL Create(
    DWORD dwStyle,
    CWnd* pParentWnd,
    UINT uID,
    int nHeight=-1,
    BOOL bIsMessageBarMode=FALSE);

Paraméterek

dwStyle
A feliratsávstílusok logikai VAGY kombinációja.

pParentWnd
A feliratsáv vezérlőelem szülőablaka.

Uid
A feliratsáv vezérlőelem azonosítója.

nHeight
A feliratsáv vezérlőelem magassága képpontban. Ha -1, akkor a rendszer az ikon, a szöveg és a feliratsáv által megjelenített gomb magasságának megfelelően számítja ki a magasságot.

bIsMessageBarMode
IGAZ, ha a feliratsáv üzenetsáv módban van; HAMIS egyéb esetben.

Visszaadott érték

IGAZ, ha a feliratsáv vezérlőelem sikeresen létrejött; HAMIS egyéb esetben.

Megjegyzések

Egy objektumot CMFCCaptionBar két lépésben hozhat létre. Először meghívja a konstruktort, majd meghívja a Create metódust, amely létrehozza a Windows-vezérlőt, és csatolja azt az CMFCCaptionBar objektumhoz.

CMFCCaptionBar::D oesAllowDynInsertBefore

Azt jelzi, hogy egy másik ablaktábla dinamikusan beszúrható-e a feliratsáv és a szülőkeret közé.

virtual BOOL DoesAllowDynInsertBefore() const;

Visszaadott érték

HAMIS értéket ad vissza, kivéve, ha felül van bírálva.

Megjegyzések

CMFCCaptionBar::EnableButton

Engedélyezi vagy letiltja a feliratsávon lévő gombot.

void EnableButton(BOOL bEnable=TRUE);

Paraméterek

bEnable
[in] IGAZ a gomb engedélyezéséhez, HAMIS a gomb letiltásához.

CMFCCaptionBar::GetAlignment

A megadott elem igazítását adja vissza.

BarElementAlignment GetAlignment(BarElement elem);

Paraméterek

elem
[in] Egy feliratsáv-elem, amelyhez be szeretné kérni az igazítást.

Visszaadott érték

Egy elem( például gomb, bitkép, szöveg vagy ikon) igazítása.

Megjegyzések

Az elem igazítása a következő értékek egyike lehet:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::GetBorderSize

A feliratsáv szegélyméretét adja vissza.

int GetBorderSize() const;

Visszaadott érték

A szegély mérete képpontban.

CMFCCaptionBar::GetButtonRect

Lekéri a feliratsávon lévő gomb határolókeretét.

CRect GetButtonRect() const;

Visszaadott érték

Egy CRect objektum, amely a feliratsávon található gomb határoló téglalapjának koordinátáit tartalmazza.

CMFCCaptionBar::GetMargin

A feliratsáv elemeinek széle és a feliratsáv vezérlőelem széle közötti távolságot adja vissza.

int GetMargin() const;

Visszaadott érték

A feliratsáv elemeinek széle és a feliratsáv vezérlőelem széle közötti távolság képpontban.

CMFCCaptionBar::IsMessageBarMode

Megadja, hogy a feliratsáv az üzenetsáv módban van-e.

BOOL IsMessageBarMode() const;

Visszaadott érték

IGAZ, ha a feliratsáv üzenetsáv módban van; HAMIS egyéb esetben.

Megjegyzések

Az üzenetsáv módban a feliratsáv egy elemleírást, egy üzenetszöveget és egy gombot tartalmazó képet jelenít meg.

CMFCCaptionBar::m_clrBarBackground

A feliratsáv háttérszíne.

COLORREF m_clrBarBackground

CMFCCaptionBar::m_clrBarBorder

A feliratsáv szegélyének színe.

COLORREF m_clrBarBorder

CMFCCaptionBar::m_clrBarText

A feliratsáv szövegének színe.

COLORREF m_clrBarText

CMFCCaptionBar::OnDrawBackground

A keretrendszer meghívta, hogy kitöltse a feliratsáv hátterét.

virtual void OnDrawBackground(
    CDC* pDC,
    CRect rect);

Paraméterek

Pdc
[in] A feliratsáv eszközkörnyezetére mutató mutató.

téglalap
[in] A kitöltendő határoló téglalap.

Megjegyzések

A OnDrawBackground metódus akkor lesz meghívva, ha a feliratsáv háttere hamarosan megtelik. Az alapértelmezett implementáció a CMFCCaptionBar::m_clrBarBackground színnel tölti ki a hátteret.

Felülbírálja ezt a metódust egy CMFCCaptionBar származtatott osztályban a feliratsáv megjelenésének testreszabásához.

CMFCCaptionBar::OnDrawBorder

A keretrendszer meghívta, hogy rajzolja meg a feliratsáv szegélyét.

virtual void OnDrawBorder(
    CDC* pDC,
    CRect rect);

Paraméterek

Pdc
[in] Eszközkörnyezet, amely a szegélyek megjelenítésére szolgál.

téglalap
[in] A határoló téglalap.

Megjegyzések

Alapértelmezés szerint a szegélyek stílusa lapos.

Felülbírálja ezt a metódust egy CMFCCaptionBar származtatott osztályban a feliratsáv szegélyeinek megjelenésének testreszabásához.

CMFCCaptionBar::OnDrawButton

A keretrendszer meghívta a feliratsáv gombjának rajzolásához.

virtual void OnDrawButton(
    CDC* pDC,
    CRect rect,
    const CString& strButton,
    BOOL bEnabled);

Paraméterek

Pdc
[in] A gomb megjelenítéséhez használt eszközkörnyezetre mutató mutató.

téglalap
[in] A gomb határoló téglalapja.

strButton
[in] A gomb szövegfelirata.

bEnabled
[in] IGAZ, ha a gomb engedélyezve van; HAMIS egyéb esetben.

Megjegyzések

Felülbírálja ezt a metódust egy CMFCCaptionBar származtatott osztályban a feliratsáv gombjának megjelenésének testreszabásához.

CMFCCaptionBar::OnDrawImage

A keretrendszer meghívta a feliratsáv képének rajzolásához.

virtual void OnDrawImage(
    CDC* pDC,
    CRect rect);

Paraméterek

Pdc
[in] A kép megjelenítéséhez használt eszközkörnyezetre mutató mutató.

téglalap
[in] A kép határoló téglalapját adja meg.

Megjegyzések

Felülbírálja ezt a metódust egy CMFCCaptionBar származtatott osztályban a kép megjelenésének testreszabásához.

CMFCCaptionBar::OnDrawText

A keretrendszer meghívta a feliratsáv szövegének rajzolásához.

virtual void OnDrawText(
    CDC* pDC,
    CRect rect,
    const CString& strText);

Paraméterek

Pdc
[in] A gomb megjelenítéséhez használt eszközkörnyezetre mutató mutató.

téglalap
[in] A szöveg határoló téglalapja.

strText
[in] A megjelenítendő szöveges sztring.

Megjegyzések

Az alapértelmezett implementáció megjeleníti a szöveget a CMFCCaptionBar::m_clrBarText szín használatávalCDC::DrawText.

Felülbírálja ezt a metódust egy CMFCCaptionBar származtatott osztályban a feliratsáv szövegének megjelenésének testreszabásához.

CMFCCaptionBar::RemoveBitmap

Eltávolítja a bitképet a feliratsávról.

void RemoveBitmap();

CMFCCaptionBar::RemoveButton

Eltávolítja a gombot a feliratsávról.

void RemoveButton();

Megjegyzések

A feliratsáv elemeinek elrendezése automatikusan módosul.

CMFCCaptionBar::RemoveIcon

Eltávolítja az ikont a feliratsávról.

void RemoveIcon();

CMFCCaptionBar::RemoveText

Eltávolítja a szövegfeliratot a feliratsávról.

void RemoveText();

CMFCCaptionBar::SetBitmap

Beállítja a feliratsáv bitképét.

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);

Paraméterek

hBitmap
[in] A beállítani kívánt bitképhez tartozó fogópont.

clrTransparent
[in] A bitkép áttetsző színét meghatározó RGB-érték.

bStretch
[in] Ha IGAZ, akkor a bitkép ki van feszítve, ha nem illeszkedik a kép határoló téglalaphoz. Ellenkező esetben a bitkép nincs kinyújtva.

bmpAlignment
[in] A bitkép igazítása.

Megjegyzések

Ezzel a módszerrel állíthat be egy bitképet egy feliratsávon.

Az előző bitkép automatikusan megsemmisül. Ha a feliratsáv egy ikont jelenít meg, mert a CMFCCaptionBar::SetIcon metódust hívta, a bitkép csak akkor jelenik meg, ha eltávolítja az ikont a CMFCCaptionBar::RemoveIcon meghívásával.

A bitkép a bmpAlignment paraméter által megadott módon van igazítva. Ez a paraméter a következő BarElementAlignment értékek egyike lehet:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::SetBorderSize

Beállítja a feliratsáv szegélyméretét.

void SetBorderSize(int nSize);

Paraméterek

nSize
[in] A feliratsáv szegélyének új mérete képpontban.

CMFCCaptionBar::SetButton

Beállítja a feliratsáv gombját.

void SetButton(
    LPCTSTR lpszLabel,
    UINT uiCmdUI,
    BarElementAlignment btnAlignmnet=ALIGN_LEFT,
    BOOL bHasDropDownArrow=TRUE);

Paraméterek

lpszLabel
A gomb parancscímkéje.

uiCmdUI
A gomb parancsazonosítója.

btnAlignmnet
A gomb igazítása.

bHasDropDownArrow
IGAZ, ha a gomb egy legördülő nyilat jelenít meg, ellenkező esetben HAMIS.

CMFCCaptionBar::SetButtonPressed

Megadja, hogy a gomb lenyomva marad-e.

void SetButtonPressed(BOOL bPresed=TRUE);

Paraméterek

bPresed
IGAZ, ha a gomb lenyomva tartja a lenyomott állapotát, ellenkező esetben HAMIS.

CMFCCaptionBar::SetButtonToolTip

Beállítja a gomb elemleírását.

void SetButtonToolTip(
    LPCTSTR lpszToolTip,
    LPCTSTR lpszDescription=NULL);

Paraméterek

lpszToolTip
[in] Az elemleírás felirata.

lpszDescription
[in] Az elemleírás leírása.

CMFCCaptionBar::SetFlatBorder

Beállítja a feliratsáv szegélystílusát.

void SetFlatBorder(BOOL bFlat=TRUE);

Paraméterek

bFlat
[in] IGAZ, ha a feliratsáv szegélye lapos. HAMIS, ha a szegély 3D.

CMFCCaptionBar::SetIcon

A feliratsáv ikonjának beállítása.

void SetIcon(
    HICON hIcon,
    BarElementAlignment iconAlignment=ALIGN_RIGHT);

Paraméterek

hIcon
[in] A beállítani kívánt ikon fogópontja.

iconAlignment
[in] Az ikon igazítása.

Megjegyzések

A feliratsávok ikonokat vagy bitképeket is megjeleníthetnek. Lásd: CMFCCaptionBar::SetBitmap , amelyből megtudhatja, hogyan jeleníthet meg bitképet. Ha egy ikont és egy bitképet is beállít, az ikon mindig megjelenik. A CMFCCaptionBar::RemoveIcon hívásával eltávolíthat egy ikont a feliratsávról.

Az ikon az iconAlignment paraméternek megfelelően van igazítva. A következő BarElementAlignment értékek egyike lehet:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::SetImageToolTip

Beállítja a kép elemleírását a feliratsávon.

void SetImageToolTip(
    LPCTSTR lpszToolTip,
    LPCTSTR lpszDescription=NULL);

Paraméterek

lpszToolTip
[in] Az elemleírás szövege.

lpszDescription
[in] Az elemleírás leírása.

CMFCCaptionBar::SetMargin

Beállítja a feliratsáv elemének széle és a feliratsáv vezérlőelem széle közötti távolságot.

void SetMargin(int nMargin);

Paraméterek

nMargin
[in] A feliratsáv elemeinek széle és a feliratsáv vezérlőelem széle közötti távolság képpontban.

CMFCCaptionBar::SetText

Beállítja a feliratsáv szövegfeliratát.

void SetText(
    const CString& strText,
    BarElementAlignment textAlignment=ALIGN_RIGHT);

Paraméterek

strText
[in] A beállítani kívánt szöveges sztring.

textAlignment
[in] A szöveg igazítása.

Megjegyzések

A szövegfelirat a textAlignment paraméter által megadott módon van igazítva. A következő BarElementAlignment értékek egyike lehet:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

Lásd még

hierarchiadiagram
osztályok