Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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:
Hozza létre az
CMFCCaptionBarobjektumot. A feliratsávot általában egy keretablak-osztályhoz kell hozzáadni.Hívja meg a CMFCCaptionBar::Create metódust a feliratsáv vezérlőelem létrehozásához és az
CMFCCaptionBarobjektumhoz való csatolásához.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
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