Share via


CMFCCaptionBar-klasse

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Een CMFCCaptionBar object is een besturingsbalk die drie elementen kan weergeven: een knop, een tekstlabel en een bitmap. Er kan slechts één element van elk type tegelijk worden weergegeven. U kunt elk element uitlijnen op de linker- of rechterrand van het besturingselement of op het midden. U kunt ook een platte of 3D-stijl toepassen op de boven- en onderranden van de bijschriftbalk.

Syntaxis

class CMFCCaptionBar : public CPane

Leden

Openbare methoden

Naam Description
CMFCCaptionBar::Create Hiermee maakt u het besturingselement voor de bijschriftbalk en koppelt u het aan het CMFCCaptionBar object.
CMFCCaptionBar::D oesAllowDynInsertBefore Hiermee wordt aangegeven of een ander deelvenster dynamisch kan worden ingevoegd tussen de bijschriftbalk en het bovenliggende frame. (Overschrijft CBasePane::D oesAllowDynInsertBefore.)
CMFCCaptionBar::EnableButton Hiermee schakelt u de knop op de bijschriftbalk in of uit.
CMFCCaptionBar::GetAlignment Retourneert de uitlijning van het opgegeven element.
CMFCCaptionBar::GetBorderSize Retourneert de randgrootte van de bijschriftbalk.
CMFCCaptionBar::GetButtonRect Hiermee haalt u de begrenzingsrechthoek van de knop op de bijschriftbalk op.
CMFCCaptionBar::GetMargin Retourneert de afstand tussen de rand van de bijschriftbalkelementen en de rand van het besturingselement voor de bijschriftbalk.
CMFCCaptionBar::IsMessageBarMode Hiermee geeft u op of de bijschriftbalk zich in de berichtenbalkmodus bevindt.
CMFCCaptionBar::RemoveBitmap Hiermee verwijdert u de bitmapafbeelding uit de bijschriftbalk.
CMFCCaptionBar::RemoveButton Hiermee verwijdert u de knop uit de bijschriftbalk.
CMFCCaptionBar::RemoveIcon Hiermee verwijdert u het pictogram uit de bijschriftbalk.
CMFCCaptionBar::RemoveText Hiermee verwijdert u het tekstlabel uit de bijschriftbalk.
CMFCCaptionBar::SetBitmap Hiermee stelt u de bitmapafbeelding voor de bijschriftbalk in.
CMFCCaptionBar::SetBorderSize Hiermee stelt u de randgrootte van de bijschriftbalk in.
CMFCCaptionBar::SetButton Hiermee stelt u de knop voor de bijschriftbalk in.
CMFCCaptionBar::SetButtonPressed Hiermee geeft u op of de knop ingedrukt blijft.
CMFCCaptionBar::SetButtonToolTip Hiermee stelt u de knopinfo voor de knop in.
CMFCCaptionBar::SetFlatBorder Hiermee stelt u de randstijl van de bijschriftbalk in.
CMFCCaptionBar::SetIcon Hiermee stelt u het pictogram voor een bijschriftbalk in.
CMFCCaptionBar::SetImageToolTip Hiermee stelt u de knopinfo voor de afbeelding voor de bijschriftbalk in.
CMFCCaptionBar::SetMargin Hiermee stelt u de afstand in tussen de rand van het bijschriftbalkelement en de rand van het besturingselement voor de bijschriftbalk.
CMFCCaptionBar::SetText Hiermee stelt u het tekstlabel voor de bijschriftbalk in.

Beveiligde methoden

Naam Description
CMFCCaptionBar::OnDrawBackground Aangeroepen door het framework om de achtergrond van de bijschriftbalk te vullen.
CMFCCaptionBar::OnDrawBorder Aangeroepen door het framework om de rand van de bijschriftbalk te tekenen.
CMFCCaptionBar::OnDrawButton Aangeroepen door het framework om de knop bijschriftbalk te tekenen.
CMFCCaptionBar::OnDrawImage Wordt aangeroepen door het framework om de afbeelding van de bijschriftbalk te tekenen.
CMFCCaptionBar::OnDrawText Aangeroepen door het framework om de tekst van de bijschriftbalk te tekenen.

Gegevensleden

Naam Description
CMFCCaptionBar::m_clrBarBackground De achtergrondkleur van de bijschriftbalk.
CMFCCaptionBar::m_clrBarBorder De kleur van de rand van de bijschriftbalk.
CMFCCaptionBar::m_clrBarText De kleur van de tekst van de bijschriftbalk.

Opmerkingen

Voer de volgende stappen uit om een bijschriftbalk te maken:

  1. Maak het CMFCCaptionBar object. Normaal gesproken voegt u de bijschriftbalk toe aan een framevensterklasse.

  2. Roep de CMFCCaptionBar::Create-methode aan om het besturingselement voor de bijschriftbalk te maken en deze aan het CMFCCaptionBar object toe te voegen.

  3. Roep CMFCCaptionBar::SetButton, CMFCCaptionBar::SetText, CMFCCaptionBar::SetIcon en CMFCCaptionBar::SetBitmap aan om de ondertitelingsbalkelementen in te stellen.

Wanneer u het knopelement instelt, moet u een opdracht-id toewijzen aan de knop. Wanneer de gebruiker op de knop klikt, stuurt de bijschriftbalk de WM_COMMAND berichten met deze id door naar het bovenliggende framevenster.

De bijschriftbalk kan ook werken in de berichtenbalkmodus, waarmee de berichtenbalk wordt geëmuleren die wordt weergegeven in Microsoft Office 2007-toepassingen. In de berichtenbalkmodus wordt op de bijschriftbalk een bitmap, een bericht en een knop weergegeven (waarmee doorgaans een dialoogvenster wordt geopend.) U kunt knopinfo toewijzen aan de bitmap.

Als u de berichtenbalkmodus wilt inschakelen, roept u CMFCCaptionBar::Maak en stel de vierde parameter (bIsMessageBarMode) in op TRUE.

Example

In het volgende voorbeeld ziet u hoe u verschillende methoden in de CMFCCaptionBar klasse gebruikt. In het voorbeeld ziet u hoe u het besturingselement voor de bijschriftbalk maakt, een 3D-rand van de bijschriftbalk instelt, de afstand instelt, in pixels, tussen de rand van de ondertitelingsbalkelementen en de rand van het besturingselement voor de bijschriftbalk, de knopknop instelt, de knopinfo voor de knop instelt, het tekstlabel voor de bijschriftbalk instelt, stel de bitmapafbeelding voor de bijschriftbalk in en stel de knopinfo voor de afbeelding in de bijschriftbalk in. Dit codefragment maakt deel uit van het MS Office 2007 Demo-voorbeeld.

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

Overnamehiërarchie

CObject

CCmdTarget-

CWnd

CBasePane

CPane

CMFCCaptionBar

Requirements

Koptekst: afxcaptionbar.h

CMFCCaptionBar::Create

Hiermee maakt u het besturingselement voor de bijschriftbalk en koppelt u het aan het CMFCCaptionBar object.

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

Parameterwaarden

dwStyle
De logische OR-combinatie van de stijlen voor de bijschriftbalk.

pParentWnd
Het bovenliggende venster van het besturingselement voor de bijschriftbalk.

Uid
De id van het besturingselement voor de bijschriftbalk.

nHeight
De hoogte, in pixels, van het besturingselement voor de bijschriftbalk. Als dit -1 is, wordt de hoogte berekend op basis van de hoogte van het pictogram, de tekst en de knop die het besturingselement voor de bijschriftbalk weergeeft.

bIsMessageBarMode
WAAR als de bijschriftbalk zich in de berichtenbalkmodus bevindt; ANDERS ONWAAR.

Retourwaarde

WAAR als het besturingselement voor de bijschriftbalk is gemaakt; ANDERS ONWAAR.

Opmerkingen

U maakt een CMFCCaptionBar object in twee stappen. Eerst roept u de constructor aan en vervolgens roept u de Create methode aan, waarmee het Windows-besturingselement wordt gemaakt en aan het CMFCCaptionBar object wordt gekoppeld.

CMFCCaptionBar::D oesAllowDynInsertBefore

Hiermee wordt aangegeven of een ander deelvenster dynamisch kan worden ingevoegd tussen de bijschriftbalk en het bovenliggende frame.

virtual BOOL DoesAllowDynInsertBefore() const;

Retourwaarde

Retourneert FALSE, tenzij overschreven.

Opmerkingen

CMFCCaptionBar::EnableButton

Hiermee schakelt u de knop op de bijschriftbalk in of uit.

void EnableButton(BOOL bEnable=TRUE);

Parameterwaarden

bEnable
[in] TRUE om de knop IN te schakelen, ONWAAR om de knop uit te schakelen.

CMFCCaptionBar::GetAlignment

Retourneert de uitlijning van het opgegeven element.

BarElementAlignment GetAlignment(BarElement elem);

Parameterwaarden

elem
[in] Een ondertitelingsbalkelement waarvoor uitlijning moet worden opgehaald.

Retourwaarde

De uitlijning van een element, zoals een knop, een bitmap, tekst of een pictogram.

Opmerkingen

De uitlijning van het element kan een van de volgende waarden zijn:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::GetBorderSize

Retourneert de randgrootte van de bijschriftbalk.

int GetBorderSize() const;

Retourwaarde

De grootte, in pixels, van de rand.

CMFCCaptionBar::GetButtonRect

Hiermee haalt u de begrenzingsrechthoek van de knop op de bijschriftbalk op.

CRect GetButtonRect() const;

Retourwaarde

Een CRect object met de coördinaten van de begrenzingsrechthoek van de knop op de bijschriftbalk.

CMFCCaptionBar::GetMargin

Retourneert de afstand tussen de rand van de bijschriftbalkelementen en de rand van het besturingselement voor de bijschriftbalk.

int GetMargin() const;

Retourwaarde

De afstand, in pixels, tussen de rand van de bijschriftbalkelementen en de rand van het besturingselement voor de bijschriftbalk.

CMFCCaptionBar::IsMessageBarMode

Hiermee geeft u op of de bijschriftbalk zich in de berichtenbalkmodus bevindt.

BOOL IsMessageBarMode() const;

Retourwaarde

WAAR als de bijschriftbalk zich in de berichtenbalkmodus bevindt; ANDERS ONWAAR.

Opmerkingen

In de berichtenbalkmodus geeft de bijschriftbalk een afbeelding weer met knopinfo, een berichttekst en een knop.

CMFCCaptionBar::m_clrBarBackground

De achtergrondkleur van de bijschriftbalk.

COLORREF m_clrBarBackground

CMFCCaptionBar::m_clrBarBorder

De kleur van de rand van de bijschriftbalk.

COLORREF m_clrBarBorder

CMFCCaptionBar::m_clrBarText

De kleur van de tekst van de bijschriftbalk.

COLORREF m_clrBarText

CMFCCaptionBar::OnDrawBackground

Aangeroepen door het framework om de achtergrond van de bijschriftbalk te vullen.

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

Parameterwaarden

Pdc
[in] Een aanwijzer naar de apparaatcontext van de bijschriftbalk.

Rect
[in] De begrenzingsrechthoek die moet worden gevuld.

Opmerkingen

De OnDrawBackground methode wordt aangeroepen wanneer de achtergrond van de bijschriftbalk op het punt staat te worden gevuld. De standaard implementatie vult de achtergrond met behulp van de CMFCCaptionBar::m_clrBarBackground kleur.

Overschrijf deze methode in een CMFCCaptionBar afgeleide klasse om het uiterlijk van de bijschriftbalk aan te passen.

CMFCCaptionBar::OnDrawBorder

Aangeroepen door het framework om de rand van de bijschriftbalk te tekenen.

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

Parameterwaarden

Pdc
[in] Een apparaatcontext die wordt gebruikt om de randen weer te geven.

Rect
[in] De begrenzingsrechthoek.

Opmerkingen

De randen hebben standaard de platte stijl.

Overschrijf deze methode in een CMFCCaptionBar afgeleide klasse om het uiterlijk van de randen van de bijschriftbalk aan te passen.

CMFCCaptionBar::OnDrawButton

Aangeroepen door het framework om de knop bijschriftbalk te tekenen.

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

Parameterwaarden

Pdc
[in] Een aanwijzer naar een apparaatcontext die wordt gebruikt om de knop weer te geven.

Rect
[in] De begrenzingsrechthoek van de knop.

strButton
[in] Het tekstlabel van de knop.

bEnabled
[in] WAAR als de knop is ingeschakeld; ANDERS ONWAAR.

Opmerkingen

Overschrijf deze methode in een CMFCCaptionBar afgeleide klasse om het uiterlijk van de knop van de bijschriftbalk aan te passen.

CMFCCaptionBar::OnDrawImage

Wordt aangeroepen door het framework om de afbeelding van de bijschriftbalk te tekenen.

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

Parameterwaarden

Pdc
[in] Een aanwijzer naar een apparaatcontext die wordt gebruikt om de afbeelding weer te geven.

Rect
[in] Hiermee geeft u de begrenzingsrechthoek van de afbeelding op.

Opmerkingen

Overschrijf deze methode in een CMFCCaptionBar afgeleide klasse om het uiterlijk van de afbeelding aan te passen.

CMFCCaptionBar::OnDrawText

Aangeroepen door het framework om de tekst van de bijschriftbalk te tekenen.

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

Parameterwaarden

Pdc
[in] Een aanwijzer naar een apparaatcontext die wordt gebruikt om de knop weer te geven.

Rect
[in] De begrenzingsrechthoek van de tekst.

strText
[in] De tekenreeks die moet worden weergegeven.

Opmerkingen

De standaard implementatie geeft de tekst weer met behulp van CDC::DrawText en CMFCCaptionBar::m_clrBarText kleur.

Overschrijf deze methode in een CMFCCaptionBar afgeleide klasse om het uiterlijk van de tekst van de bijschriftbalk aan te passen.

CMFCCaptionBar::RemoveBitmap

Hiermee verwijdert u de bitmapafbeelding uit de bijschriftbalk.

void RemoveBitmap();

CMFCCaptionBar::RemoveButton

Hiermee verwijdert u de knop uit de bijschriftbalk.

void RemoveButton();

Opmerkingen

De indeling van bijschriftbalkelementen wordt automatisch aangepast.

CMFCCaptionBar::RemoveIcon

Hiermee verwijdert u het pictogram uit de bijschriftbalk.

void RemoveIcon();

CMFCCaptionBar::RemoveText

Hiermee verwijdert u het tekstlabel uit de bijschriftbalk.

void RemoveText();

CMFCCaptionBar::SetBitmap

Hiermee stelt u de bitmapafbeelding voor de bijschriftbalk in.

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

Parameterwaarden

hBitmap
[in] De greep op de bitmap die moet worden ingesteld.

clrTransparent
[in] Een RGB-waarde die de transparante kleur van de bitmap aangeeft.

bStretch
[in] Als WAAR is, wordt de bitmap uitgerekt als deze niet past bij de rechthoek met begrenzing van de afbeelding. Anders wordt de bitmap niet uitgerekt.

bmpAlignment
[in] De uitlijning van de bitmap.

Opmerkingen

Gebruik deze methode om een bitmap in te stellen op een bijschriftbalk.

De vorige bitmap wordt automatisch vernietigd. Als op de bijschriftbalk een pictogram wordt weergegeven omdat u de methode CMFCCaptionBar::SetIcon hebt genoemd, wordt de bitmap niet weergegeven, tenzij u het pictogram verwijdert door CMFCCaptionBar::RemoveIcon aan te roepen.

De bitmap wordt uitgelijnd zoals opgegeven door de parameter bmpAlignment . Deze parameter kan een van de volgende BarElementAlignment waarden zijn:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::SetBorderSize

Hiermee stelt u de randgrootte van de bijschriftbalk in.

void SetBorderSize(int nSize);

Parameterwaarden

nSize
[in] De nieuwe grootte, in pixels, van de ondertitelingsbalkrand.

CMFCCaptionBar::SetButton

Hiermee stelt u de knop voor de bijschriftbalk in.

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

Parameterwaarden

lpszLabel
Het opdrachtlabel van de knop.

uiCmdUI
De opdracht-id van de knop.

btnAlignmnet
De uitlijning van de knop.

bHasDropDownArrow
WAAR als op de knop een vervolgkeuzepijl wordt weergegeven, anders ONWAAR.

CMFCCaptionBar::SetButtonPressed

Hiermee geeft u op of de knop ingedrukt blijft.

void SetButtonPressed(BOOL bPresed=TRUE);

Parameterwaarden

bPresed
WAAR als de knop de status ingedrukt houdt, anders ONWAAR.

CMFCCaptionBar::SetButtonToolTip

Hiermee stelt u de knopinfo voor de knop in.

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

Parameterwaarden

lpszToolTip
[in] Het bijschrift voor knopinfo.

lpszDescription
[in] De beschrijving van de knopinfo.

CMFCCaptionBar::SetFlatBorder

Hiermee stelt u de randstijl van de bijschriftbalk in.

void SetFlatBorder(BOOL bFlat=TRUE);

Parameterwaarden

bFlat
[in] WAAR als de rand van een bijschriftbalk plat is. ONWAAR als de rand 3D is.

CMFCCaptionBar::SetIcon

Hiermee stelt u het pictogram voor een bijschriftbalk in.

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

Parameterwaarden

hIcon
[in] De greep naar het pictogram dat moet worden ingesteld.

iconAlignment
[in] De uitlijning van het pictogram.

Opmerkingen

Bijschriftbalken kunnen pictogrammen of bitmaps weergeven. Zie CMFCCaptionBar::SetBitmap voor informatie over het weergeven van een bitmap. Als u zowel een pictogram als een bitmap instelt, wordt het pictogram altijd weergegeven. Roep CMFCCaptionBar::RemoveIcon aan om een pictogram uit de bijschriftbalk te verwijderen.

Het pictogram wordt uitgelijnd op basis van de parameter iconAlignment . Dit kan een van de volgende BarElementAlignment waarden zijn:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::SetImageToolTip

Hiermee stelt u de knopinfo voor de afbeelding in de bijschriftbalk in.

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

Parameterwaarden

lpszToolTip
[in] De tekst van de knopinfo.

lpszDescription
[in] De beschrijving van de knopinfo.

CMFCCaptionBar::SetMargin

Hiermee stelt u de afstand in tussen de rand van het bijschriftbalkelement en de rand van het besturingselement voor de bijschriftbalk.

void SetMargin(int nMargin);

Parameterwaarden

nMargin
[in] De afstand, in pixels, tussen de rand van de bijschriftbalkelementen en de rand van het besturingselement voor de bijschriftbalk.

CMFCCaptionBar::SetText

Hiermee stelt u het tekstlabel voor de bijschriftbalk in.

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

Parameterwaarden

strText
[in] De tekenreeks die moet worden ingesteld.

textAlignment
[in] De tekstuitlijning.

Opmerkingen

Het tekstlabel wordt uitgelijnd zoals opgegeven door de parameter textAlignment . Dit kan een van de volgende BarElementAlignment waarden zijn:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

Zie ook

Hiërarchiegrafiek
Klassen