Sdílet prostřednictvím


CPagerCtrl – třída

Třída CPagerCtrl zabalí ovládací prvek Pager systému Windows, který se může posunout do zobrazení obsaženého okna, které se nevejde do okna obsahujícího.

Syntaxe

class CPagerCtrl : public CWnd

Členové

Veřejné konstruktory

Název Popis
CPagerCtrl::CPagerCtrl CPagerCtrl Vytvoří objekt.

Veřejné metody

Název Popis
CPagerCtrl::Create Vytvoří ovládací prvek pager se zadanými styly a připojí ho k aktuálnímu CPagerCtrl objektu.
CPagerCtrl::CreateEx Vytvoří ovládací prvek pager se zadanými rozšířenými styly a připojí ho k aktuálnímu CPagerCtrl objektu.
CPagerCtrl::ForwardMouse Povolí nebo zakáže přeposílání WM_MOUSEMOVE zpráv do okna, které je obsaženo v aktuálním ovládacím prvku pager.
CPagerCtrl::GetBkColor Načte barvu pozadí aktuálního ovládacího prvku pager.
CPagerCtrl::GetBorder Načte velikost ohraničení aktuálního ovládacího prvku pager.
CPagerCtrl::GetButtonSize Načte velikost tlačítka aktuálního ovládacího prvku pager.
CPagerCtrl::GetButtonState Načte stav zadaného tlačítka v aktuálním ovládacím prvku pager.
CPagerCtrl::GetDropTarget Načte rozhraní IDropTarget pro aktuální ovládací prvek pager.
CPagerCtrl::GetScrollPos Načte pozici posouvání aktuálního ovládacího prvku pager.
CPagerCtrl::IsButtonDepressed Určuje, jestli je zadané tlačítko aktuálního ovládacího prvku pager ve pressed stavu.
CPagerCtrl::IsButtonGrayed Určuje, jestli je zadané tlačítko aktuálního ovládacího prvku pager ve grayed stavu.
CPagerCtrl::IsButtonHot Určuje, jestli je zadané tlačítko aktuálního ovládacího prvku pager ve hot stavu.
CPagerCtrl::IsButtonInvisible Určuje, jestli je zadané tlačítko aktuálního ovládacího prvku pager ve invisible stavu.
CPagerCtrl::IsButtonNormal Určuje, jestli je zadané tlačítko aktuálního ovládacího prvku pager ve normal stavu.
CPagerCtrl::RecalcSize Způsobí, že aktuální ovládací prvek pager přepočítá velikost obsaženého okna.
CPagerCtrl::SetBkColor Nastaví barvu pozadí aktuálního ovládacího prvku pager.
CPagerCtrl::SetBorder Nastaví velikost ohraničení aktuálního ovládacího prvku pager.
CPagerCtrl::SetButtonSize Nastaví velikost tlačítka aktuálního ovládacího prvku pager.
CPagerCtrl::SetChild Nastaví obsažené okno pro aktuální ovládací prvek pager.
CPagerCtrl::SetScrollPos Nastaví pozici posouvání aktuálního ovládacího prvku pager.

Poznámky

Ovládací prvek Pager je okno, které obsahuje jiné okno, které je lineární a větší než okno obsahující, a umožňuje posouvání obsaženého okna do zobrazení. Ovládací prvek Pager zobrazí dvě posuvníková tlačítka, která automaticky zmizí, když se okno s obsahem posune na nejbližší rozsah, a v opačném případě se znovu zobrazí. Můžete vytvořit ovládací prvek pager, který se posune vodorovně nebo svisle.

Pokud má vaše aplikace například panel nástrojů, který není dostatečně široký, aby se zobrazily všechny její položky, můžete panel nástrojů přiřadit ovládacímu prvku pager a uživatelé se budou moct posouvat na panel nástrojů doleva nebo doprava, aby měli přístup ke všem položkám. Microsoft Internet Explorer verze 4.0 (commctrl.dll verze 4.71) zavádí ovládací prvek pager.

Třída CPagerCtrl je odvozena z CWnd třídy. Další informace a ilustraci ovládacího prvku pager naleznete v tématu Ovládací prvky Pager.

Hierarchie dědičnosti

Objekt CObject

CCmdTarget

CWnd

CPagerCtrl

Požadavky

Hlavička: afxcmn.h

CPagerCtrl::CPagerCtrl

CPagerCtrl Vytvoří objekt.

CPagerCtrl();

Poznámky

Pomocí metody CPagerCtrl::Create nebo CPagerCtrl::CreateEx vytvořte ovládací prvek pager a připojte ho k objektuCPagerCtrl.

CPagerCtrl::Create

Vytvoří ovládací prvek pager se zadanými styly a připojí ho k aktuálnímu CPagerCtrl objektu.

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parametry

dwStyle
[v] Bitová kombinace (OR) stylů oken a stylů ovládacích prvků pager, které se mají použít u ovládacího prvku.

Rect
[v] Odkaz na strukturu RECT , která obsahuje pozici a velikost ovládacího prvku v souřadnicích klienta.

pParentWnd
[v] Ukazatel na objekt CWnd , který je nadřazeným oknem ovládacího prvku. Tento parametr nemůže být NULL.

Nid
[v] ID ovládacího prvku.

Návratová hodnota

TRUE, pokud tato metoda je úspěšná; jinak NEPRAVDA.

Poznámky

Chcete-li vytvořit ovládací prvek pager, deklarujte proměnnou CPagerCtrl a potom volejte metodu CPagerCtrl::Create nebo CPagerCtrl::CreateEx pro danou proměnnou.

Příklad

Následující příklad vytvoří pager ovládací prvek, pak používá CPagerCtrl::SetChild metoda přidružení velmi dlouhé tlačítko ovládací prvek s pager ovládací prvek. Příklad pak použije CPagerCtrl::SetButtonSize metoda nastavit výšku ovládacího prvku pager na 20 pixelů a CPagerCtrl::SetBorder metoda nastavit tloušťku ohraničení na 1 pixel.

// Initialize the dropdown menu of the splitbutton control.
m_splitButton.SetDropDownMenu(IDR_MENU1, 0);

// Create the pager control.
BOOL nRet;
CRect rect;
GetClientRect(&rect);
nRet = m_pager.Create(
    (WS_VISIBLE | WS_CHILD | PGS_HORZ),
    CRect(rect.Width() / 4, 5, (rect.Width() * 3) / 4, 55),
    this,
    IDC_PAGER1);

m_pager.GetClientRect(&rect);
nRet = m_button.Create(
    _T("This is a very, very long button. 012345678901234567890"),
    (WS_VISIBLE | WS_CHILD), // Do not use CCS_NORESIZE.
    CRect(0, 0, rect.Width(), 30),
    &m_pager, IDC_BUTTON1);

m_pager.SetChild(m_button.m_hWnd);
m_pager.SetButtonSize(20);
m_pager.SetBorder(1);

CPagerCtrl::CreateEx

Vytvoří ovládací prvek pager se zadanými rozšířenými styly a připojí ho k aktuálnímu CPagerCtrl objektu.

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parametry

dwExStyle
[v] Bitová kombinace rozšířených stylů, které se mají použít u ovládacího prvku. Další informace naleznete v dwExStyle parametr CreateWindowExEx funkce.

dwStyle
[v] Bitová kombinace (OR) stylů oken a stylů ovládacích prvků pager, které se mají použít u ovládacího prvku.

Rect
[v] Odkaz na strukturu RECT , která obsahuje pozici a velikost ovládacího prvku v souřadnicích klienta.

pParentWnd
[v] Ukazatel na objekt CWnd , který je nadřazeným oknem ovládacího prvku. Tento parametr nemůže být NULL.

Nid
[v] ID ovládacího prvku.

Návratová hodnota

TRUE, pokud tato metoda je úspěšná; jinak NEPRAVDA.

Poznámky

Chcete-li vytvořit ovládací prvek pager, deklarujte proměnnou CPagerCtrl a potom volejte metodu CPagerCtrl::Create nebo CPagerCtrl::CreateEx pro danou proměnnou.

CPagerCtrl::ForwardMouse

Povolí nebo zakáže přeposílání WM_MOUSEMOVE zpráv do okna, které je obsaženo v aktuálním ovládacím prvku pager.

void ForwardMouse(BOOL bForward);

Parametry

bForward
[v] HODNOTA TRUE pro přeposílání zpráv myši nebo NEPRAVDA, aby nepřeposílaly zprávy myši.

Poznámky

Tato metoda odešle PGM_FORWARDMOUSE zprávu, která je popsaná v sadě Windows SDK.

CPagerCtrl::GetBorder

Načte velikost ohraničení aktuálního ovládacího prvku pager.

int GetBorder() const;

Návratová hodnota

Aktuální velikost ohraničení měřená v pixelech.

Poznámky

Tato metoda odešle PGM_GETBORDER zprávu, která je popsaná v sadě Windows SDK.

Příklad

Následující příklad používá CPagerCtrl::GetBorder metoda načtení tloušťky ovládacího prvku pager ohraničení.

void CCSplitButton_s2Dlg::OnXBorder()
{
   int borderSize = m_pager.GetBorder();
   CString str;
   str.Format(_T("The border is %d pixel(s) thick."), borderSize);
   MessageBox(str);
}

CPagerCtrl::GetBkColor

Načte barvu pozadí aktuálního ovládacího prvku pager.

COLORREF GetBkColor() const;

Návratová hodnota

Hodnota COLORREF , která obsahuje aktuální barvu pozadí ovládacího prvku pager.

Poznámky

Tato metoda odešle PGM_GETBKCOLOR zprávu, která je popsaná v sadě Windows SDK.

Příklad

Následující příklad používá CPagerCtrl::SetBkColor metoda nastavit barvu pozadí pager ovládacího prvku červená a CPagerCtrl::GetBkColor metoda potvrdit, že došlo k provedení změny.

void CCSplitButton_s2Dlg::OnXColor()
{
   COLORREF originalColor;
   //  Set color to red.
   originalColor = m_pager.SetBkColor(RGB(255, 0, 0));
   if (m_pager.GetBkColor() != RGB(255, 0, 0))
   {
      MessageBox(_T("Control did not return RED as the previous color."));
   }
   // The following statement is one way to restore the color.
   // m_pager.SetBkColor( originalColor );
}

CPagerCtrl::GetButtonSize

Načte velikost tlačítka aktuálního ovládacího prvku pager.

int GetButtonSize() const;

Návratová hodnota

Aktuální velikost tlačítka měřená v pixelech.

Poznámky

Tato metoda odešle PGM_GETBUTTONSIZE zprávu, která je popsaná v sadě Windows SDK.

Pokud má ovládací prvek pager styl PGS_HORZ, velikost tlačítka určuje šířku tlačítek pageru a pokud má ovládací prvek pager styl PGS_VERT, velikost tlačítka určuje výšku tlačítek pageru. Další informace naleznete v tématu Styly ovládacího prvku Pager.

CPagerCtrl::GetButtonState

Načte stav zadaného tlačítka posuvníku v aktuálním ovládacím prvku pager.

DWORD GetButtonState(int iButton) const;

Parametry

iButton
[v] Označuje tlačítko, pro které se stav načte. Pokud je styl ovládacího prvku pager PGS_HORZ, zadejte PGB_TOPORLEFT levého tlačítka a PGB_BOTTOMORRIGHT pravého tlačítka. Pokud je styl ovládacího prvku pager PGS_VERT, zadejte PGB_TOPORLEFT pro horní tlačítko a PGB_BOTTOMORRIGHT dolního tlačítka. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Návratová hodnota

Stav tlačítka určeného parametrem iButton . Stav je buď PGF_INVISIBLE, PGF_NORMAL, PGF_GRAYED, PGF_DEPRESSED nebo PGF_HOT. Další informace najdete v části Návratová hodnota PGM_GETBUTTONSTATE zprávy.

Poznámky

Tato metoda odešle PGM_GETBUTTONSTATE zprávu, která je popsaná v sadě Windows SDK.

CPagerCtrl::GetDropTarget

Načte rozhraní IDropTarget pro aktuální ovládací prvek pager.

IDropTarget* GetDropTarget() const;

Návratová hodnota

Ukazatel na IDropTarget rozhraní aktuálního ovládacího prvku pager.

Poznámky

IDropTarget je jedním z rozhraní, která implementujete pro podporu operací přetažení do aplikace.

Tato metoda odešle PGM_GETDROPTARGET zprávu, která je popsaná v sadě Windows SDK. Volající této metody zodpovídá za volání Release člena rozhraní IDropTarget , pokud rozhraní už není potřeba.

CPagerCtrl::GetScrollPos

Načte pozici posouvání aktuálního ovládacího prvku pager.

int GetScrollPos() const;

Návratová hodnota

Aktuální pozice posouvání měřená v pixelech.

Poznámky

Tato metoda odešle PGM_GETPOS zprávu, která je popsaná v sadě Windows SDK.

Příklad

Následující příklad používá CPagerCtrl::GetScrollPos metoda načtení aktuální pozice posouvání pager ovládacího prvku. Pokud ovládací prvek pager není již posunut na nulu, pozice úplně vlevo, příklad používá CPagerCtrl::SetScrollPos metoda nastavit pozici posouvání na nulu.

void CCSplitButton_s2Dlg::OnXScrollposition()
{
   int pos;
   CString str;
   pos = m_pager.GetScrollPos();
   if (pos != 0)
      m_pager.SetScrollPos(0);
   str.Format(_T("Old position = %d; new position = 0"), pos);
   MessageBox(str);
}

CPagerCtrl::IsButtonDepressed

Určuje, zda je zadané tlačítko posuvníku aktuálního ovládacího prvku pager ve stavu stisknutí.

BOOL IsButtonDepressed(int iButton) const;

Parametry

iButton
[v] Označuje tlačítko, pro které se stav načte. Pokud je styl ovládacího prvku pager PGS_HORZ, zadejte PGB_TOPORLEFT levého tlačítka a PGB_BOTTOMORRIGHT pravého tlačítka. Pokud je styl ovládacího prvku pager PGS_VERT, zadejte PGB_TOPORLEFT pro horní tlačítko a PGB_BOTTOMORRIGHT dolního tlačítka. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Návratová hodnota

TRUE, pokud je zadané tlačítko v stisknutém stavu; jinak NEPRAVDA.

Poznámky

Tato metoda odešle PGM_GETBUTTONSTATE zprávu, která je popsaná v sadě Windows SDK. Potom otestuje, jestli je vrácený stav PGF_DEPRESSED. Další informace najdete v části Návratová hodnota PGM_GETBUTTONSTATE zprávy.

CPagerCtrl::IsButtonGrayed

Určuje, jestli je zadané posuvníkové tlačítko aktuálního ovládacího prvku Pager v šedém stavu.

BOOL IsButtonGrayed(int iButton) const;

Parametry

iButton
[v] Označuje tlačítko, pro které se stav načte. Pokud je styl ovládacího prvku pager PGS_HORZ, zadejte PGB_TOPORLEFT levého tlačítka a PGB_BOTTOMORRIGHT pravého tlačítka. Pokud je styl ovládacího prvku pager PGS_VERT, zadejte PGB_TOPORLEFT pro horní tlačítko a PGB_BOTTOMORRIGHT dolního tlačítka. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Návratová hodnota

TRUE, pokud je zadané tlačítko v šedém stavu; jinak NEPRAVDA.

Poznámky

Tato metoda odešle PGM_GETBUTTONSTATE zprávu, která je popsaná v sadě Windows SDK. Potom otestuje, jestli je vrácený stav PGF_GRAYED. Další informace najdete v části Návratová hodnota PGM_GETBUTTONSTATE zprávy.

CPagerCtrl::IsButtonHot

Určuje, jestli je zadané posuvníkové tlačítko aktuálního ovládacího prvku pager v horkém stavu.

BOOL IsButtonHot(int iButton) const;

Parametry

iButton
[v] Označuje tlačítko, pro které se stav načte. Pokud je styl ovládacího prvku pager PGS_HORZ, zadejte PGB_TOPORLEFT levého tlačítka a PGB_BOTTOMORRIGHT pravého tlačítka. Pokud je styl ovládacího prvku pager PGS_VERT, zadejte PGB_TOPORLEFT pro horní tlačítko a PGB_BOTTOMORRIGHT dolního tlačítka. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Návratová hodnota

TRUE, pokud je zadané tlačítko v horkém stavu; jinak NEPRAVDA.

Poznámky

Tato metoda odešle PGM_GETBUTTONSTATE zprávu, která je popsaná v sadě Windows SDK. Potom otestuje, jestli je vrácený stav PGF_HOT. Další informace najdete v části Návratová hodnota PGM_GETBUTTONSTATE zprávy.

CPagerCtrl::IsButtonInvisible

Určuje, zda je zadané posuvníkové tlačítko aktuálního ovládacího prvku pager v neviditelném stavu.

BOOL IsButtonInvisible(int iButton) const;

Parametry

iButton
[v] Označuje tlačítko, pro které se stav načte. Pokud je styl ovládacího prvku pager PGS_HORZ, zadejte PGB_TOPORLEFT levého tlačítka a PGB_BOTTOMORRIGHT pravého tlačítka. Pokud je styl ovládacího prvku pager PGS_VERT, zadejte PGB_TOPORLEFT pro horní tlačítko a PGB_BOTTOMORRIGHT dolního tlačítka. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Návratová hodnota

TRUE, pokud zadané tlačítko je v neviditelném stavu; jinak NEPRAVDA.

Poznámky

Když je okno obsaženého okna posunuté do nejdáhlejšího rozsahu, windows tlačítko posouvání v určitém směru zneviditelní, protože kliknutím na tlačítko dále nelze přenést více z obsaženého okna do zobrazení.

Tato metoda odešle PGM_GETBUTTONSTATE zprávu, která je popsaná v sadě Windows SDK. Potom otestuje, jestli je vrácený stav PGF_INVISIBLE. Další informace najdete v části Návratová hodnota PGM_GETBUTTONSTATE zprávy.

Příklad

Následující příklad používá CPagerCtrl::IsButtonInvisible metoda k určení, zda jsou tlačítka pager ovládací prvek vlevo a vpravo viditelné.


void CCSplitButton_s2Dlg::OnXIsbuttoninvisible()
{
   BOOL bLeft = m_pager.IsButtonInvisible(PGB_TOPORLEFT);
   BOOL bRight = m_pager.IsButtonInvisible(PGB_BOTTOMORRIGHT);
   CString str;
   str.Format(_T("The left button is%s visible; the right button is%s visible."),
              (bLeft ? _T(" not") : _T("")),
              (bRight ? _T(" not") : _T("")));
   MessageBox(str);
}

CPagerCtrl::IsButtonNormal

Určuje, jestli je zadané posuvníkové tlačítko aktuálního ovládacího prvku pager v normálním stavu.

BOOL IsButtonNormal(int iButton) const;

Parametry

iButton
[v] Označuje tlačítko, pro které se stav načte. Pokud je styl ovládacího prvku pager PGS_HORZ, zadejte PGB_TOPORLEFT levého tlačítka a PGB_BOTTOMORRIGHT pravého tlačítka. Pokud je styl ovládacího prvku pager PGS_VERT, zadejte PGB_TOPORLEFT pro horní tlačítko a PGB_BOTTOMORRIGHT dolního tlačítka. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Návratová hodnota

TRUE, pokud je zadané tlačítko v normálním stavu; jinak NEPRAVDA.

Poznámky

Tato metoda odešle PGM_GETBUTTONSTATE zprávu, která je popsaná v sadě Windows SDK. Potom otestuje, jestli je vrácený stav PGF_NORMAL. Další informace najdete v části Návratová hodnota PGM_GETBUTTONSTATE zprávy.

CPagerCtrl::RecalcSize

Způsobí, že aktuální ovládací prvek pager přepočítá velikost obsaženého okna.

void RecalcSize();

Poznámky

Tato metoda odešle PGM_RECALCSIZE zprávu, která je popsaná v sadě Windows SDK. V důsledku toho ovládací prvek pager odešle PGN_CALCSIZE oznámení, aby získal posuvné rozměry obsaženého okna.

Příklad 1

Následující příklad používá metodu CPagerCtrl::RecalcSize k vyžádání aktuálního ovládacího prvku pager k přepočtu jeho velikosti.

void CCSplitButton_s2Dlg::OnXRecalcsize()
{
   // If the child control changes size, call RecalcSize() to change
   // the size of the pager control accordingly.
   m_pager.RecalcSize();
   MessageBox(_T("The pager control size has been recalculated."));
}

Příklad 2

Následující příklad používá reflexi zprávy k tomu, aby ovládací prvek pager přepočítal svou vlastní velikost, místo aby vyžadoval nadřazené dialogové okno ovládacího prvku k provedení výpočtu. Příklad odvozuje MyPagerCtrl třídu z CPagerCtrl třídy a pak pomocí mapy zpráv přidruží PGN_CALCSIZE oznámení k obslužné rutině OnCalcsize oznámení. V tomto příkladu obslužná rutina oznámení nastaví šířku a výšku ovládacího prvku pager na pevné hodnoty.

BEGIN_MESSAGE_MAP(CMyPagerCtrl, CPagerCtrl)
ON_NOTIFY_REFLECT(PGN_CALCSIZE, &CMyPagerCtrl::OnCalcSize)
END_MESSAGE_MAP()

// CMyPagerCtrl message handlers
void CMyPagerCtrl::OnCalcSize(NMHDR *code, LRESULT *param)
{
   // If the control contained in the pager control changes size, use this
   // handler to change the size of the pager control accordingly.

   LPNMPGCALCSIZE tmp = (LPNMPGCALCSIZE)code;
   *param = 0;
   tmp->iWidth = 500;
   tmp->iHeight = 50;
}

CPagerCtrl::SetBkColor

Nastaví barvu pozadí aktuálního ovládacího prvku pager.

COLORREF SetBkColor(COLORREF clrBk);

Parametry

clrBk
[v] Hodnota COLORREF , která obsahuje novou barvu pozadí ovládacího prvku pager.

Návratová hodnota

Hodnota COLORREF, která obsahuje předchozí barvu pozadí ovládacího prvku pager.

Poznámky

Tato metoda odešle PGM_SETBKCOLOR zprávu, která je popsaná v sadě Windows SDK.

Příklad

Následující příklad používá CPagerCtrl::SetBkColor metoda nastavit barvu pozadí pager ovládacího prvku červená a CPagerCtrl::GetBkColor metoda potvrdit, že došlo k provedení změny.

void CCSplitButton_s2Dlg::OnXColor()
{
   COLORREF originalColor;
   //  Set color to red.
   originalColor = m_pager.SetBkColor(RGB(255, 0, 0));
   if (m_pager.GetBkColor() != RGB(255, 0, 0))
   {
      MessageBox(_T("Control did not return RED as the previous color."));
   }
   // The following statement is one way to restore the color.
   // m_pager.SetBkColor( originalColor );
}

CPagerCtrl::SetBorder

Nastaví velikost ohraničení aktuálního ovládacího prvku pager.

int SetBorder(int iBorder);

Parametry

iBorder
[v] Nová velikost ohraničení měřená v pixelech. Pokud je parametr iBorder záporný, je velikost ohraničení nastavená na nulu.

Návratová hodnota

Předchozí velikost ohraničení měřená v pixelech.

Poznámky

Tato metoda odešle PGM_SETBORDER zprávu, která je popsaná v sadě Windows SDK.

Příklad

Následující příklad vytvoří pager ovládací prvek, pak používá CPagerCtrl::SetChild metoda přidružení velmi dlouhé tlačítko ovládací prvek s pager ovládací prvek. Příklad pak použije CPagerCtrl::SetButtonSize metoda nastavit výšku ovládacího prvku pager na 20 pixelů a CPagerCtrl::SetBorder metoda nastavit tloušťku ohraničení na 1 pixel.

// Initialize the dropdown menu of the splitbutton control.
m_splitButton.SetDropDownMenu(IDR_MENU1, 0);

// Create the pager control.
BOOL nRet;
CRect rect;
GetClientRect(&rect);
nRet = m_pager.Create(
    (WS_VISIBLE | WS_CHILD | PGS_HORZ),
    CRect(rect.Width() / 4, 5, (rect.Width() * 3) / 4, 55),
    this,
    IDC_PAGER1);

m_pager.GetClientRect(&rect);
nRet = m_button.Create(
    _T("This is a very, very long button. 012345678901234567890"),
    (WS_VISIBLE | WS_CHILD), // Do not use CCS_NORESIZE.
    CRect(0, 0, rect.Width(), 30),
    &m_pager, IDC_BUTTON1);

m_pager.SetChild(m_button.m_hWnd);
m_pager.SetButtonSize(20);
m_pager.SetBorder(1);

CPagerCtrl::SetButtonSize

Nastaví velikost tlačítka aktuálního ovládacího prvku pager.

int SetButtonSize(int iButtonSize);

Parametry

iButtonSize
[v] Nová velikost tlačítka měřená v pixelech.

Návratová hodnota

Velikost předchozího tlačítka měřená v pixelech.

Poznámky

Tato metoda odešle PGM_SETBUTTONSIZE zprávu, která je popsaná v sadě Windows SDK.

Pokud má ovládací prvek pager styl PGS_HORZ, velikost tlačítka určuje šířku tlačítek pageru a pokud má ovládací prvek pager styl PGS_VERT, velikost tlačítka určuje výšku tlačítek pageru. Výchozí velikost tlačítka je tři čtvrtiny šířky posuvníku a minimální velikost tlačítka je 12 pixelů. Další informace naleznete v tématu Styly ovládacího prvku Pager.

Příklad

Následující příklad vytvoří pager ovládací prvek, pak používá CPagerCtrl::SetChild metoda přidružení velmi dlouhé tlačítko ovládací prvek s pager ovládací prvek. Příklad pak použije CPagerCtrl::SetButtonSize metoda nastavit výšku ovládacího prvku pager na 20 pixelů a CPagerCtrl::SetBorder metoda nastavit tloušťku ohraničení na 1 pixel.

// Initialize the dropdown menu of the splitbutton control.
m_splitButton.SetDropDownMenu(IDR_MENU1, 0);

// Create the pager control.
BOOL nRet;
CRect rect;
GetClientRect(&rect);
nRet = m_pager.Create(
    (WS_VISIBLE | WS_CHILD | PGS_HORZ),
    CRect(rect.Width() / 4, 5, (rect.Width() * 3) / 4, 55),
    this,
    IDC_PAGER1);

m_pager.GetClientRect(&rect);
nRet = m_button.Create(
    _T("This is a very, very long button. 012345678901234567890"),
    (WS_VISIBLE | WS_CHILD), // Do not use CCS_NORESIZE.
    CRect(0, 0, rect.Width(), 30),
    &m_pager, IDC_BUTTON1);

m_pager.SetChild(m_button.m_hWnd);
m_pager.SetButtonSize(20);
m_pager.SetBorder(1);

CPagerCtrl::SetChild

Nastaví obsažené okno pro aktuální ovládací prvek pager.

void SetChild(HWND hwndChild);

Parametry

hwndChild
[v] Úchyt pro okno, které má být obsaženo.

Poznámky

Tato metoda odešle zprávu PGM_SETCHILD , která je popsaná v sadě Windows SDK.

Tato metoda nezmění nadřazený prvek obsaženého okna; přiřazuje ovládacímu prvku pager pouze úchyt okna pro posouvání. Ve většině případů bude obsažené okno podřízeným oknem ovládacího prvku pager.

Příklad

Následující příklad vytvoří pager ovládací prvek, pak používá CPagerCtrl::SetChild metoda přidružení velmi dlouhé tlačítko ovládací prvek s pager ovládací prvek. Příklad pak použije CPagerCtrl::SetButtonSize metoda nastavit výšku ovládacího prvku pager na 20 pixelů a CPagerCtrl::SetBorder metoda nastavit tloušťku ohraničení na 1 pixel.

// Initialize the dropdown menu of the splitbutton control.
m_splitButton.SetDropDownMenu(IDR_MENU1, 0);

// Create the pager control.
BOOL nRet;
CRect rect;
GetClientRect(&rect);
nRet = m_pager.Create(
    (WS_VISIBLE | WS_CHILD | PGS_HORZ),
    CRect(rect.Width() / 4, 5, (rect.Width() * 3) / 4, 55),
    this,
    IDC_PAGER1);

m_pager.GetClientRect(&rect);
nRet = m_button.Create(
    _T("This is a very, very long button. 012345678901234567890"),
    (WS_VISIBLE | WS_CHILD), // Do not use CCS_NORESIZE.
    CRect(0, 0, rect.Width(), 30),
    &m_pager, IDC_BUTTON1);

m_pager.SetChild(m_button.m_hWnd);
m_pager.SetButtonSize(20);
m_pager.SetBorder(1);

CPagerCtrl::SetScrollPos

Nastaví pozici posouvání aktuálního ovládacího prvku pager.

void SetScrollPos(int iPos);

Parametry

iPos
[v] Nová pozice posouvání měřená v pixelech.

Poznámky

Tato metoda odešle PGM_SETPOS zprávu, která je popsaná v sadě Windows SDK.

Viz také

CPagerCtrl – třída
Graf hierarchie
Ovládací prvky Pager