Sdílet prostřednictvím


CMFCCaptionBar – třída

Objekt CMFCCaptionBar je ovládací panel, který může zobrazit tři prvky: tlačítko, textový popisek a rastrový obrázek. Může zobrazit vždy pouze jeden prvek každého typu. Každý prvek můžete zarovnat k levému nebo pravému okraji ovládacího prvku nebo na střed. Můžete také použít plochý nebo 3D styl na horní a dolní ohraničení popis pruhu.

Syntaxe

class CMFCCaptionBar : public CPane

Členové

Veřejné metody

Jméno popis
CMFCCaptionBar::Create Vytvoří ovládací prvek popis pruhu a připojí ho k objektuCMFCCaptionBar.
CMFCCaptionBar::D oesAllowDynInsertBefore Určuje, zda je možné dynamicky vložit další podokno mezi panel popis a nadřazeným rámečkem. (Přepsání CBasePane::D oesAllowDynInsertBefore.)
CMFCCaptionBar::EnableButton Povolí nebo zakáže tlačítko na panelu popis.
CMFCCaptionBar::GetAlignment Vrátí zarovnání zadaného prvku.
CMFCCaptionBar::GetBorderSize Vrátí velikost ohraničení popis pruhu.
CMFCCaptionBar::GetButtonRect Načte ohraničující obdélník tlačítka na panelu popis.
CMFCCaptionBar::GetMargin Vrátí vzdálenost mezi okrajem prvků popis pruhu a okrajem ovládacího prvku popis pruhu.
CMFCCaptionBar::IsMessageBarMode Určuje, jestli je panel popis v režimu panelu zpráv.
CMFCCaptionBar::RemoveBitmap Odebere rastrový obrázek z panelu popis.
CMFCCaptionBar::RemoveButton Odebere tlačítko z panelu popis.
CMFCCaptionBar::RemoveIcon Odebere ikonu z panelu popis.
CMFCCaptionBar::RemoveText Odebere textový popisek z panelu popis.
CMFCCaptionBar::SetBitmap Nastaví rastrový obrázek pro panel popis.
CMFCCaptionBar::SetBorderSize Nastaví velikost ohraničení popis pruhu.
CMFCCaptionBar::SetButton Nastaví tlačítko pro panel popis.
CMFCCaptionBar::SetButtonPressed Určuje, jestli tlačítko zůstane stisknuté.
CMFCCaptionBar::SetButtonToolTip Nastaví popis tlačítka.
CMFCCaptionBar::SetFlatBorder Nastaví styl ohraničení panelu popis.
CMFCCaptionBar::SetIcon Nastaví ikonu popis pruhu.
CMFCCaptionBar::SetImageToolTip Nastaví popis obrázku pro panel popis.
CMFCCaptionBar::SetMargin Nastaví vzdálenost mezi okrajem prvku popis pruhu a okrajem ovládacího prvku popis pruhu.
CMFCCaptionBar::SetText Nastaví textový popisek popis pruhu.

Chráněné metody

Jméno popis
CMFCCaptionBar::OnDrawBackground Volá se rozhraním pro vyplnění pozadí popis pruhu.
CMFCCaptionBar::OnDrawBorder Volá se rozhraním k vykreslení ohraničení popis pruhu.
CMFCCaptionBar::OnDrawButton Volá se rozhraním pro kreslení tlačítka popis pruhu.
CMFCCaptionBar::OnDrawImage Volá se rozhraním pro vykreslení obrázku popis pruhu.
CMFCCaptionBar::OnDrawText Volá se rozhraním pro vykreslení textu popis pruhu.

Datové členy

Jméno popis
CMFCCaptionBar::m_clrBarBackground Barva pozadí panelu popis.
CMFCCaptionBar::m_clrBarBorder Barva ohraničení popis pruhu
CMFCCaptionBar::m_clrBarText Barva textu popis pruhu

Poznámky

Chcete-li vytvořit panel popis, postupujte takto:

  1. CMFCCaptionBar Vytvořte objekt. Obvykle byste přidali panel popis do třídy okna rámečku.

  2. Volání CMFCCaptionBar::Create metoda vytvořit popis pruhový ovládací prvek a připojit ho k objektuCMFCCaptionBar.

  3. Volání CMFCCaptionBar::SetButton, CMFCCaptionBar::SetText, CMFCCaptionBar::SetIcon a CMFCCaptionBar::SetBitmap k nastavení elementů popis pruhu.

Když nastavíte prvek tlačítka, musíte k tlačítku přiřadit ID příkazu. Když uživatel klikne na tlačítko, panel popis směruje WM_COMMAND zprávy, které mají toto ID, do okna nadřazeného rámce.

Panel popis může fungovat také v režimu panelu zpráv, který emuluje panel zpráv, který se zobrazí v aplikacích systém Microsoft Office 2007. V režimu panelu zpráv se na panelu popis zobrazí rastrový obrázek, zpráva a tlačítko (které obvykle otevře dialogové okno).) K rastrovém obrázku můžete přiřadit popis.

Chcete-li povolit režim panelu zpráv, zavolejte CMFCCaptionBar::Create a nastavte čtvrtý parametr (bIsMessageBarMode) na TRUE.

Příklad

Následující příklad ukazuje, jak používat různé metody ve CMFCCaptionBar třídě. Příklad ukazuje, jak vytvořit ovládací prvek popis pruhu, nastavit 3D ohraničení popis pruhu, nastavit vzdálenost, v pixelech, mezi okrajem prvků popis pruhu a okrajem ovládacího prvku popis pruhu, nastavit tlačítko pro popis pruh, nastavit popisek tlačítka pro tlačítko, nastavit popisek textu pro popis nastavte rastrový obrázek pro popis pruh a nastavte popis obrázku na panelu popis. Tento fragment kódu je součástí ukázky MS Office 2007 Demo.

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

Hierarchie dědičnosti

Objekt CObject

CCmdTarget

Cwnd

CBasePane

Podokno CPane

CMFCCaptionBar

Požadavky

Záhlaví: afx popis bar.h

CMFCCaptionBar::Create

Vytvoří ovládací prvek popis pruhu a připojí ho k objektuCMFCCaptionBar.

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

Parametry

dwStyle
Logická kombinace nebo stylů pruhů popis.

pParentWnd
Nadřazené okno ovládacího prvku popis pruhu.

Uid
ID ovládacího prvku popis pruhu.

nHeight
Výška ovládacího prvku popis pruhu v pixelech. Pokud je -1, výška se vypočítá podle výšky ikony, textu a tlačítka, které se zobrazí ovládací prvek popis pruhu.

bIsMessageBarMode
TRUE, pokud popis panel je v režimu panelu zpráv; JINAK NEPRAVDA.

Vrácená hodnota

TRUE, pokud popis pruhový ovládací prvek je úspěšně vytvořen; JINAK NEPRAVDA.

Poznámky

Objekt vytvoříte CMFCCaptionBar ve dvou krocích. Nejprve zavoláte konstruktor a pak zavoláte metodu Create , která vytvoří ovládací prvek Windows a připojí ho k objektu CMFCCaptionBar .

CMFCCaptionBar::D oesAllowDynInsertBefore

Určuje, zda je možné dynamicky vložit další podokno mezi panel popis a nadřazeným rámečkem.

virtual BOOL DoesAllowDynInsertBefore() const;

Vrácená hodnota

Vrátí hodnotu FALSE, pokud ji nepřepíšete.

Poznámky

CMFCCaptionBar::EnableButton

Povolí nebo zakáže tlačítko na panelu popis.

void EnableButton(BOOL bEnable=TRUE);

Parametry

bEnable
[v] Pokud chcete tlačítko povolit, NEPRAVDA tlačítko zakážete.

CMFCCaptionBar::GetAlignment

Vrátí zarovnání zadaného prvku.

BarElementAlignment GetAlignment(BarElement elem);

Parametry

Elem
[v] Prvek popis pruhu, pro který se má načíst zarovnání.

Vrácená hodnota

Zarovnání prvku, například tlačítka, rastrového obrázku, textu nebo ikony.

Poznámky

Zarovnání elementu může být jedna z následujících hodnot:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::GetBorderSize

Vrátí velikost ohraničení popis pruhu.

int GetBorderSize() const;

Vrácená hodnota

Velikost ohraničení v pixelech.

CMFCCaptionBar::GetButtonRect

Načte ohraničující obdélník tlačítka na panelu popis.

CRect GetButtonRect() const;

Vrácená hodnota

ObjektCRect, který obsahuje souřadnice ohraničujícího obdélníku tlačítka na panelu popis.

CMFCCaptionBar::GetMargin

Vrátí vzdálenost mezi okrajem prvků popis pruhu a okrajem ovládacího prvku popis pruhu.

int GetMargin() const;

Vrácená hodnota

Vzdálenost v pixelech mezi okrajem prvků popis pruhu a okrajem ovládacího prvku popis pruhu.

CMFCCaptionBar::IsMessageBarMode

Určuje, jestli je panel popis v režimu panelu zpráv.

BOOL IsMessageBarMode() const;

Vrácená hodnota

TRUE, pokud popis panel je v režimu panelu zpráv; JINAK NEPRAVDA.

Poznámky

V režimu panelu zpráv se na panelu popis zobrazí obrázek s popisem, textem zprávy a tlačítkem.

CMFCCaptionBar::m_clrBarBackground

Barva pozadí panelu popis.

COLORREF m_clrBarBackground

CMFCCaptionBar::m_clrBarBorder

Barva ohraničení popis pruhu

COLORREF m_clrBarBorder

CMFCCaptionBar::m_clrBarText

Barva textu popis pruhu

COLORREF m_clrBarText

CMFCCaptionBar::OnDrawBackground

Volá se rozhraním pro vyplnění pozadí popis pruhu.

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

Parametry

Pdc
[v] Ukazatel na kontext zařízení na panelu popis.

Rect
[v] Ohraničující obdélník, který se má vyplnit.

Poznámky

Metoda OnDrawBackground se volá, když se chystá vyplnit pozadí popis pruhu. Výchozí implementace vyplní pozadí pomocí barvy CMFCCaptionBar::m_clrBarBackground .

Přepsat tuto metodu v odvozené CMFCCaptionBar třídě přizpůsobit vzhled popis pruhu.

CMFCCaptionBar::OnDrawBorder

Volá se rozhraním k vykreslení ohraničení popis pruhu.

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

Parametry

Pdc
[v] Kontext zařízení, který se používá k zobrazení ohraničení.

Rect
[v] Ohraničující obdélník.

Poznámky

Ve výchozím nastavení mají ohraničení plochý styl.

Přepište tuto metodu v odvozené CMFCCaptionBar třídě tak, aby přizpůsobila vzhled ohraničení popis pruhu.

CMFCCaptionBar::OnDrawButton

Volá se rozhraním pro kreslení tlačítka popis pruhu.

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

Parametry

Pdc
[v] Ukazatel na kontext zařízení, který slouží k zobrazení tlačítka.

Rect
[v] Ohraničující obdélník tlačítka.

strButton
[v] Textový popisek tlačítka.

bEnabled
[v] TRUE, pokud je tlačítko povoleno; JINAK NEPRAVDA.

Poznámky

Přepsat tuto metodu v odvozené CMFCCaptionBar třídě přizpůsobit vzhled tlačítka popis pruhu.

CMFCCaptionBar::OnDrawImage

Volá se rozhraním pro vykreslení obrázku popis pruhu.

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

Parametry

Pdc
[v] Ukazatel na kontext zařízení, který se používá k zobrazení obrázku.

Rect
[v] Určuje ohraničující obdélník obrázku.

Poznámky

Přepsat tuto metodu v odvozené CMFCCaptionBar třídě přizpůsobit vzhled obrázku.

CMFCCaptionBar::OnDrawText

Volá se rozhraním pro vykreslení textu popis pruhu.

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

Parametry

Pdc
[v] Ukazatel na kontext zařízení, který slouží k zobrazení tlačítka.

Rect
[v] Ohraničující obdélník textu.

strText
[v] Textový řetězec, který se má zobrazit.

Poznámky

Výchozí implementace zobrazí text pomocí CDC::DrawText a CMFCCaptionBar::m_clrBarText barvu.

Přepsat tuto metodu v odvozené CMFCCaptionBar třídě přizpůsobit vzhled textu popis pruhu.

CMFCCaptionBar::RemoveBitmap

Odebere rastrový obrázek z panelu popis.

void RemoveBitmap();

CMFCCaptionBar::RemoveButton

Odebere tlačítko z panelu popis.

void RemoveButton();

Poznámky

Rozložení prvků pruhu popis se upraví automaticky.

CMFCCaptionBar::RemoveIcon

Odebere ikonu z panelu popis.

void RemoveIcon();

CMFCCaptionBar::RemoveText

Odebere textový popisek z panelu popis.

void RemoveText();

CMFCCaptionBar::SetBitmap

Nastaví rastrový obrázek pro panel popis.

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

Parametry

hBitmap
[v] Úchyt rastrového obrázku, který chcete nastavit.

clrTransparent
[v] Hodnota RGB, která určuje průhlednou barvu rastrového obrázku.

bStretch
[v] Pokud je hodnota PRAVDA, rastrový obrázek se roztáhne, pokud se nevejde do obdélníku ohraničujícího obrázek. V opačném případě není rastrový obrázek roztažený.

bmpAlignment
[v] Zarovnání rastrového obrázku.

Poznámky

Tuto metodu použijte k nastavení rastrového obrázku na popis pruhu.

Předchozí rastrový obrázek se automaticky zničí. Pokud popis pruh zobrazí ikonu, protože jste volali CMFCCaptionBar::SetIcon metoda, rastrový obrázek se nezobrazí, pokud neodeberete ikonu voláním CMFCCaptionBar::RemoveIcon.

Rastrový obrázek je zarovnaný podle parametru bmpAlignment . Tento parametr může být jedna z následujících BarElementAlignment hodnot:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::SetBorderSize

Nastaví velikost ohraničení popis pruhu.

void SetBorderSize(int nSize);

Parametry

NSize
[v] Nová velikost ohraničení popis pruhu v pixelech

CMFCCaptionBar::SetButton

Nastaví tlačítko pro panel popis.

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

Parametry

lpszLabel
Popisek příkazu tlačítka.

uiCmdUI
ID příkazu tlačítka.

btnAlignmnet
Zarovnání tlačítka.

bHasDropDownArrow
TRUE, pokud tlačítko zobrazuje šipku rozevíracího seznamu, jinak NEPRAVDA.

CMFCCaptionBar::SetButtonPressed

Určuje, jestli tlačítko zůstane stisknuté.

void SetButtonPressed(BOOL bPresed=TRUE);

Parametry

bPresed
TRUE, pokud tlačítko udržuje svůj stisknutý stav, NEPRAVDA jinak.

CMFCCaptionBar::SetButtonToolTip

Nastaví popis tlačítka.

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

Parametry

lpszToolTip
[v] Popis popis.

lpszDescription
[v] Popis popisu

CMFCCaptionBar::SetFlatBorder

Nastaví styl ohraničení panelu popis.

void SetFlatBorder(BOOL bFlat=TRUE);

Parametry

bFlat
[v] PRAVDA, pokud je ohraničení popis pruhu ploché. NEPRAVDA, pokud je ohraničení 3D.

CMFCCaptionBar::SetIcon

Nastaví ikonu popis pruhu.

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

Parametry

hIcon
[v] Úchyt ikony, která se má nastavit.

iconAlignment
[v] Zarovnání ikony

Poznámky

Titulky můžou zobrazovat ikony nebo rastrové obrázky. Informace o tom, jak zobrazit rastrový obrázek, najdete v tématu CMFCCaptionBar::SetBitmap . Pokud nastavíte ikonu i rastrový obrázek, ikona se vždy zobrazí. Volání CMFCCaptionBar::RemoveIcon odebrání ikony z popis panelu.

Ikona je zarovnaná podle parametru iconAlignment . Může to být jedna z následujících BarElementAlignment hodnot:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

CMFCCaptionBar::SetImageToolTip

Nastaví popis obrázku na panelu popis.

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

Parametry

lpszToolTip
[v] Text popisu

lpszDescription
[v] Popis popisu

CMFCCaptionBar::SetMargin

Nastaví vzdálenost mezi okrajem prvku popis pruhu a okrajem ovládacího prvku popis pruhu.

void SetMargin(int nMargin);

Parametry

nMargin
[v] Vzdálenost v pixelech mezi okrajem prvků popis pruhu a okrajem ovládacího prvku popis pruhu.

CMFCCaptionBar::SetText

Nastaví textový popisek popis pruhu.

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

Parametry

strText
[v] Textový řetězec, který chcete nastavit.

Textalignment
[v] Zarovnání textu.

Poznámky

Textový popisek je zarovnaný podle parametru textAlignment . Může to být jedna z následujících BarElementAlignment hodnot:

  • ALIGN_INVALID

  • ALIGN_LEFT

  • ALIGN_RIGHT

  • ALIGN_CENTER

Viz také

Graf hierarchie
Třídy