CPagerCtrl-Klasse

Die Klasse CPagerCtrl kapselt das Windows-Pagersteuerelement, in dem der Benutzer einen Bildlauf durchführen kann, um ein Fenster innerhalb eines anderen Fensters in den sichtbaren Bereich zu verschieben, sofern es größer ist als das umgebende Fenster.

Syntax

class CPagerCtrl : public CWnd

Member

Öffentliche Konstruktoren

Name Beschreibung
CPagerCtrl::CPagerCtrl Erstellt ein CPagerCtrl-Objekt.

Öffentliche Methoden

Name Beschreibung
CPagerCtrl::Create Erstellt ein Pager-Steuerelement mit angegebenen Formatvorlagen und fügt es an das aktuelle CPagerCtrl Objekt an.
CPagerCtrl::CreateEx Erstellt ein Pager-Steuerelement mit angegebenen erweiterten Formatvorlagen und fügt es an das aktuelle CPagerCtrl Objekt an.
CPagerCtrl::ForwardMouse Aktiviert oder deaktiviert die Weiterleitung WM_MOUSEMOVE Nachrichten an das Fenster, das im aktuellen Pager-Steuerelement enthalten ist.
CPagerCtrl::GetBkColor Ruft die Hintergrundfarbe des aktuellen Pager-Steuerelements ab.
CPagerCtrl::GetBorder Ruft die Rahmengröße des aktuellen Pager-Steuerelements ab.
CPagerCtrl::GetButtonSize Ruft die Schaltflächengröße des aktuellen Pager-Steuerelements ab.
CPagerCtrl::GetButtonState Ruft den Status der angegebenen Schaltfläche im aktuellen Pager-Steuerelement ab.
CPagerCtrl::GetDropTarget Ruft die IDropTarget-Schnittstelle für das aktuelle Pager-Steuerelement ab.
CPagerCtrl::GetScrollPos Ruft die Bildlaufposition des aktuellen Pager-Steuerelements ab.
CPagerCtrl::IsButtonDepressed Gibt an, ob sich die angegebene Schaltfläche des aktuellen Pager-Steuerelements im pressed Zustand befindet.
CPagerCtrl::IsButtonGrayed Gibt an, ob sich die angegebene Schaltfläche des aktuellen Pager-Steuerelements im grayed Zustand befindet.
CPagerCtrl::IsButtonHot Gibt an, ob sich die angegebene Schaltfläche des aktuellen Pager-Steuerelements im hot Zustand befindet.
CPagerCtrl::IsButtonInvisible Gibt an, ob sich die angegebene Schaltfläche des aktuellen Pager-Steuerelements im invisible Zustand befindet.
CPagerCtrl::IsButtonNormal Gibt an, ob sich die angegebene Schaltfläche des aktuellen Pager-Steuerelements im normal Zustand befindet.
CPagerCtrl::RecalcSize Bewirkt, dass das aktuelle Pager-Steuerelement die Größe des enthaltenen Fensters neu berechnet.
CPagerCtrl::SetBkColor Legt die Hintergrundfarbe des aktuellen Pager-Steuerelements fest.
CPagerCtrl::SetBorder Legt die Rahmengröße des aktuellen Pager-Steuerelements fest.
CPagerCtrl::SetButtonSize Legt die Schaltflächengröße des aktuellen Pager-Steuerelements fest.
CPagerCtrl::SetChild Legt das enthaltene Fenster für das aktuelle Pager-Steuerelement fest.
CPagerCtrl::SetScrollPos Legt die Bildlaufposition des aktuellen Pager-Steuerelements fest.

Hinweise

Ein Pager-Steuerelement ist ein Fenster, das ein anderes Fenster enthält, das linear und größer als das enthaltende Fenster ist, und ermöglicht es Ihnen, das enthaltene Fenster in der Ansicht zu scrollen. Das Pager-Steuerelement zeigt zwei Bildlaufschaltflächen an, die automatisch ausgeblendet werden, wenn das enthaltene Fenster bis zum weitesten Grad gescrollt wird und andernfalls wieder angezeigt wird. Sie können ein Pager-Steuerelement erstellen, das horizontal oder vertikal scrollt.

Wenn Ihre Anwendung beispielsweise über eine Symbolleiste verfügt, die nicht breit genug ist, um alle Elemente anzuzeigen, können Sie die Symbolleiste einem Pager-Steuerelement zuweisen, und Benutzer können die Symbolleiste nach links oder rechts scrollen, um auf alle Elemente zuzugreifen. Microsoft Internet Explorer Version 4.0 (commctrl.dll Version 4.71) führt das Pager-Steuerelement ein.

Die CPagerCtrl Klasse wird von der CWnd-Klasse abgeleitet. Weitere Informationen und eine Abbildung eines Pager-Steuerelements finden Sie unter Pager-Steuerelemente.

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CPagerCtrl

Anforderungen

Header: afxcmn.h

CPagerCtrl::CPagerCtrl

Erstellt ein CPagerCtrl-Objekt.

CPagerCtrl();

Hinweise

Verwenden Sie die CPagerCtrl::Create - oder CPagerCtrl::CreateEx-Methode , um ein Pager-Steuerelement zu erstellen und an das CPagerCtrl Objekt anzufügen.

CPagerCtrl::Create

Erstellt ein Pager-Steuerelement mit angegebenen Formatvorlagen und fügt es an das aktuelle CPagerCtrl Objekt an.

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

Parameter

dwStyle
[in] Eine bitweise Kombination (OR) von Fensterformatvorlagen und Pager-Steuerelementstilen , die auf das Steuerelement angewendet werden sollen.

rect
[in] Ein Verweis auf eine RECT-Struktur , die die Position und Größe des Steuerelements in Clientkoordinaten enthält.

pParentWnd
[in] Ein Zeiger auf ein CWnd-Objekt , das das übergeordnete Fenster des Steuerelements ist. Dieser Parameter darf nicht NULL sein.

Nid
[in] Die ID des Steuerelements.

Rückgabewert

TRUE, wenn diese Methode erfolgreich ist; andernfalls FALSE.

Hinweise

Um ein Pager-Steuerelement zu erstellen, deklarieren Sie eine CPagerCtrl Variable, und rufen Sie dann die CPagerCtrl::Create - oder CPagerCtrl::CreateEx-Methode für diese Variable auf.

Beispiel

Im folgenden Beispiel wird ein Pager-Steuerelement erstellt. Anschließend wird die CPagerCtrl::SetChild-Methode verwendet, um dem Pager-Steuerelement ein sehr langes Schaltflächensteuerelement zuzuordnen. Im Beispiel wird dann die CPagerCtrl::SetButtonSize-Methode verwendet, um die Höhe des Pager-Steuerelements auf 20 Pixel festzulegen, und die CPagerCtrl::SetBorder-Methode , um die Rahmenstärke auf 1 Pixel festzulegen.

// 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

Erstellt ein Pager-Steuerelement mit angegebenen erweiterten Formatvorlagen und fügt es an das aktuelle CPagerCtrl Objekt an.

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

Parameter

dwExStyle
[in] Eine bitweise Kombination erweiterter Formatvorlagen, die auf das Steuerelement angewendet werden sollen. Weitere Informationen finden Sie im dwExStyle-Parameter der CreateWindowEx-Funktion .

dwStyle
[in] Eine bitweise Kombination (OR) von Fensterformatvorlagen und Pager-Steuerelementstilen , die auf das Steuerelement angewendet werden sollen.

rect
[in] Ein Verweis auf eine RECT-Struktur , die die Position und Größe des Steuerelements in Clientkoordinaten enthält.

pParentWnd
[in] Ein Zeiger auf ein CWnd-Objekt , das das übergeordnete Fenster des Steuerelements ist. Dieser Parameter darf nicht NULL sein.

Nid
[in] Die ID des Steuerelements.

Rückgabewert

TRUE, wenn diese Methode erfolgreich ist; andernfalls FALSE.

Hinweise

Um ein Pager-Steuerelement zu erstellen, deklarieren Sie eine CPagerCtrl Variable, und rufen Sie dann die CPagerCtrl::Create - oder CPagerCtrl::CreateEx-Methode für diese Variable auf.

CPagerCtrl::ForwardMouse

Aktiviert oder deaktiviert die Weiterleitung WM_MOUSEMOVE Nachrichten an das Fenster, das im aktuellen Pager-Steuerelement enthalten ist.

void ForwardMouse(BOOL bForward);

Parameter

bForward
[in] TRUE, um Mausnachrichten weiterzuleiten, oder FALSCH, um Mausnachrichten nicht weiterzuleiten.

Hinweise

Diese Methode sendet die PGM_FORWARDMOUSE Nachricht, die im Windows SDK beschrieben wird.

CPagerCtrl::GetBorder

Ruft die Rahmengröße des aktuellen Pager-Steuerelements ab.

int GetBorder() const;

Rückgabewert

Die aktuelle Rahmengröße in Pixel.

Hinweise

Diese Methode sendet die PGM_GETBORDER Nachricht, die im Windows SDK beschrieben wird.

Beispiel

Im folgenden Beispiel wird die CPagerCtrl::GetBorder-Methode verwendet, um die Stärke des Rahmens des Pager-Steuerelements abzurufen.

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

Ruft die Hintergrundfarbe des aktuellen Pager-Steuerelements ab.

COLORREF GetBkColor() const;

Rückgabewert

Ein COLORREF-Wert , der die aktuelle Hintergrundfarbe des Pager-Steuerelements enthält.

Hinweise

Diese Methode sendet die PGM_GETBKCOLOR Nachricht, die im Windows SDK beschrieben wird.

Beispiel

Im folgenden Beispiel wird die CPagerCtrl::SetBkColor-Methode verwendet, um die Hintergrundfarbe des Pager-Steuerelements auf Rot festzulegen, und die CPagerCtrl::GetBkColor-Methode , um zu bestätigen, dass die Änderung vorgenommen wurde.

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

Ruft die Schaltflächengröße des aktuellen Pager-Steuerelements ab.

int GetButtonSize() const;

Rückgabewert

Die aktuelle Schaltflächengröße in Pixeln.

Hinweise

Diese Methode sendet die PGM_GETBUTTONSIZE Nachricht, die im Windows SDK beschrieben wird.

Wenn das Pager-Steuerelement die PGS_HORZ Formatvorlage aufweist, bestimmt die Schaltflächengröße die Breite der Pagerschaltflächen, und wenn das Pager-Steuerelement die PGS_VERT Format aufweist, bestimmt die Schaltflächengröße die Höhe der Pager-Schaltflächen. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

CPagerCtrl::GetButtonState

Ruft den Status der angegebenen Bildlaufschaltfläche im aktuellen Pager-Steuerelement ab.

DWORD GetButtonState(int iButton) const;

Parameter

iButton
[in] Gibt die Schaltfläche an, für die der Zustand abgerufen wird. Wenn das Pager-Steuerelementformat PGS_HORZ ist, geben Sie PGB_TOPORLEFT für die linke Schaltfläche an, und PGB_BOTTOMORRIGHT für die rechte Schaltfläche. Wenn das Pager-Steuerelementformat PGS_VERT ist, geben Sie PGB_TOPORLEFT für die obere Schaltfläche und PGB_BOTTOMORRIGHT für die untere Schaltfläche an. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Rückgabewert

Der Zustand der durch den iButton-Parameter angegebenen Schaltfläche. Der Zustand ist entweder PGF_INVISIBLE, PGF_NORMAL, PGF_GRAYED, PGF_DEPRESSED oder PGF_HOT. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" der PGM_GETBUTTONSTATE Nachricht.

Hinweise

Diese Methode sendet die PGM_GETBUTTONSTATE Nachricht, die im Windows SDK beschrieben wird.

CPagerCtrl::GetDropTarget

Ruft die IDropTarget-Schnittstelle für das aktuelle Pager-Steuerelement ab.

IDropTarget* GetDropTarget() const;

Rückgabewert

Ein Zeiger auf die IDropTarget Schnittstelle für das aktuelle Pager-Steuerelement.

Hinweise

IDropTarget ist eine der Schnittstellen, die Sie implementieren, um Drag-and-Drop-Vorgänge in Ihrer Anwendung zu unterstützen.

Diese Methode sendet die PGM_GETDROPTARGET Nachricht, die im Windows SDK beschrieben wird. Der Aufrufer dieser Methode ist dafür verantwortlich, das Release Mitglied der IDropTarget-Schnittstelle aufzurufen, wenn die Schnittstelle nicht mehr benötigt wird.

CPagerCtrl::GetScrollPos

Ruft die Bildlaufposition des aktuellen Pager-Steuerelements ab.

int GetScrollPos() const;

Rückgabewert

Die aktuelle Bildlaufposition in Pixeln.

Hinweise

Diese Methode sendet die PGM_GETPOS Nachricht, die im Windows SDK beschrieben wird.

Beispiel

Im folgenden Beispiel wird die CPagerCtrl::GetScrollPos-Methode verwendet, um die aktuelle Bildlaufposition des Pager-Steuerelements abzurufen. Wenn das Pager-Steuerelement noch nicht zu Null scrollt, verwendet das Beispiel die CPagerCtrl::SetScrollPos-Methode , um die Bildlaufposition auf Null festzulegen.

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

Gibt an, ob sich die angegebene Bildlaufschaltfläche des aktuellen Pager-Steuerelements im gedrückten Zustand befindet.

BOOL IsButtonDepressed(int iButton) const;

Parameter

iButton
[in] Gibt die Schaltfläche an, für die der Zustand abgerufen wird. Wenn das Pager-Steuerelementformat PGS_HORZ ist, geben Sie PGB_TOPORLEFT für die linke Schaltfläche an, und PGB_BOTTOMORRIGHT für die rechte Schaltfläche. Wenn das Pager-Steuerelementformat PGS_VERT ist, geben Sie PGB_TOPORLEFT für die obere Schaltfläche und PGB_BOTTOMORRIGHT für die untere Schaltfläche an. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Rückgabewert

TRUE, wenn sich die angegebene Schaltfläche im gedrückten Zustand befindet; andernfalls FALSE.

Hinweise

Diese Methode sendet die PGM_GETBUTTONSTATE Nachricht, die im Windows SDK beschrieben wird. Anschließend wird getestet, ob der zurückgegebene Zustand PGF_DEPRESSED ist. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" der PGM_GETBUTTONSTATE Nachricht.

CPagerCtrl::IsButtonGrayed

Gibt an, ob sich die angegebene Bildlaufschaltfläche des aktuellen Pager-Steuerelements im grauen Zustand befindet.

BOOL IsButtonGrayed(int iButton) const;

Parameter

iButton
[in] Gibt die Schaltfläche an, für die der Zustand abgerufen wird. Wenn das Pager-Steuerelementformat PGS_HORZ ist, geben Sie PGB_TOPORLEFT für die linke Schaltfläche an, und PGB_BOTTOMORRIGHT für die rechte Schaltfläche. Wenn das Pager-Steuerelementformat PGS_VERT ist, geben Sie PGB_TOPORLEFT für die obere Schaltfläche und PGB_BOTTOMORRIGHT für die untere Schaltfläche an. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Rückgabewert

TRUE, wenn sich die angegebene Schaltfläche im grauen Zustand befindet; andernfalls FALSE.

Hinweise

Diese Methode sendet die PGM_GETBUTTONSTATE Nachricht, die im Windows SDK beschrieben wird. Anschließend wird überprüft, ob der zurückgegebene Zustand PGF_GRAYED ist. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" der PGM_GETBUTTONSTATE Nachricht.

CPagerCtrl::IsButtonHot

Gibt an, ob sich die angegebene Bildlaufschaltfläche des aktuellen Pager-Steuerelements im Hot-Zustand befindet.

BOOL IsButtonHot(int iButton) const;

Parameter

iButton
[in] Gibt die Schaltfläche an, für die der Zustand abgerufen wird. Wenn das Pager-Steuerelementformat PGS_HORZ ist, geben Sie PGB_TOPORLEFT für die linke Schaltfläche an, und PGB_BOTTOMORRIGHT für die rechte Schaltfläche. Wenn das Pager-Steuerelementformat PGS_VERT ist, geben Sie PGB_TOPORLEFT für die obere Schaltfläche und PGB_BOTTOMORRIGHT für die untere Schaltfläche an. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Rückgabewert

TRUE, wenn sich die angegebene Schaltfläche im heißen Zustand befindet; andernfalls FALSE.

Hinweise

Diese Methode sendet die PGM_GETBUTTONSTATE Nachricht, die im Windows SDK beschrieben wird. Anschließend wird getestet, ob der zurückgegebene Zustand PGF_HOT ist. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" der PGM_GETBUTTONSTATE Nachricht.

CPagerCtrl::IsButtonInvisible

Gibt an, ob sich die angegebene Bildlaufschaltfläche des aktuellen Pager-Steuerelements im unsichtbaren Zustand befindet.

BOOL IsButtonInvisible(int iButton) const;

Parameter

iButton
[in] Gibt die Schaltfläche an, für die der Zustand abgerufen wird. Wenn das Pager-Steuerelementformat PGS_HORZ ist, geben Sie PGB_TOPORLEFT für die linke Schaltfläche an, und PGB_BOTTOMORRIGHT für die rechte Schaltfläche. Wenn das Pager-Steuerelementformat PGS_VERT ist, geben Sie PGB_TOPORLEFT für die obere Schaltfläche und PGB_BOTTOMORRIGHT für die untere Schaltfläche an. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Rückgabewert

TRUE, wenn sich die angegebene Schaltfläche im unsichtbaren Zustand befindet; andernfalls FALSE.

Hinweise

Windows macht die Bildlaufschaltfläche in einer bestimmten Richtung unsichtbar, wenn das enthaltene Fenster bis zum weitesten Grad gescrollt wird, da durch Klicken auf die Schaltfläche nicht mehr das enthaltene Fenster angezeigt werden kann.

Diese Methode sendet die PGM_GETBUTTONSTATE Nachricht, die im Windows SDK beschrieben wird. Anschließend wird getestet, ob der zurückgegebene Zustand PGF_INVISIBLE ist. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" der PGM_GETBUTTONSTATE Nachricht.

Beispiel

Im folgenden Beispiel wird die CPagerCtrl::IsButtonInvisible-Methode verwendet, um zu bestimmen, ob die linken und rechten Bildlaufschaltflächen des Pager-Steuerelements sichtbar sind.


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

Gibt an, ob sich die angegebene Bildlaufschaltfläche des aktuellen Pager-Steuerelements im normalen Zustand befindet.

BOOL IsButtonNormal(int iButton) const;

Parameter

iButton
[in] Gibt die Schaltfläche an, für die der Zustand abgerufen wird. Wenn das Pager-Steuerelementformat PGS_HORZ ist, geben Sie PGB_TOPORLEFT für die linke Schaltfläche an, und PGB_BOTTOMORRIGHT für die rechte Schaltfläche. Wenn das Pager-Steuerelementformat PGS_VERT ist, geben Sie PGB_TOPORLEFT für die obere Schaltfläche und PGB_BOTTOMORRIGHT für die untere Schaltfläche an. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Rückgabewert

TRUE, wenn sich die angegebene Schaltfläche im normalen Zustand befindet; andernfalls FALSE.

Hinweise

Diese Methode sendet die PGM_GETBUTTONSTATE Nachricht, die im Windows SDK beschrieben wird. Anschließend wird überprüft, ob der zurückgegebene Zustand PGF_NORMAL ist. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" der PGM_GETBUTTONSTATE Nachricht.

CPagerCtrl::RecalcSize

Bewirkt, dass das aktuelle Pager-Steuerelement die Größe des enthaltenen Fensters neu berechnet.

void RecalcSize();

Hinweise

Diese Methode sendet die PGM_RECALCSIZE Nachricht, die im Windows SDK beschrieben wird. Folglich sendet das Pager-Steuerelement die PGN_CALCSIZE Benachrichtigung, um die bildlauffähigen Abmessungen des enthaltenen Fensters abzurufen.

Beispiel 1

Im folgenden Beispiel wird die CPagerCtrl::RecalcSize-Methode verwendet, um das aktuelle Pager-Steuerelement anzufordern, seine Größe neu zu berechnen.

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."));
}

Beispiel 2

Im folgenden Beispiel wird die Meldungsreflektion verwendet, damit das Pager-Steuerelement seine eigene Größe neu berechnet, anstatt das übergeordnete Dialogfeld des Steuerelements zum Ausführen der Berechnung zu verlangen. Das Beispiel leitet die MyPagerCtrl Klasse von der CPagerCtrl-Klasse ab und verwendet dann eine Meldungszuordnung, um die PGN_CALCSIZE Benachrichtigung dem OnCalcsize Benachrichtigungshandler zuzuordnen. In diesem Beispiel legt der Benachrichtigungshandler die Breite und Höhe des Pager-Steuerelements auf feste Werte fest.

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

Legt die Hintergrundfarbe des aktuellen Pager-Steuerelements fest.

COLORREF SetBkColor(COLORREF clrBk);

Parameter

clrBk
[in] Ein COLORREF-Wert , der die neue Hintergrundfarbe des Pager-Steuerelements enthält.

Rückgabewert

Ein COLORREF-Wert , der die vorherige Hintergrundfarbe des Pager-Steuerelements enthält.

Hinweise

Diese Methode sendet die PGM_SETBKCOLOR Nachricht, die im Windows SDK beschrieben wird.

Beispiel

Im folgenden Beispiel wird die CPagerCtrl::SetBkColor-Methode verwendet, um die Hintergrundfarbe des Pager-Steuerelements auf Rot festzulegen, und die CPagerCtrl::GetBkColor-Methode , um zu bestätigen, dass die Änderung vorgenommen wurde.

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

Legt die Rahmengröße des aktuellen Pager-Steuerelements fest.

int SetBorder(int iBorder);

Parameter

iBorder
[in] Die neue Rahmengröße in Pixel. Wenn der iBorder-Parameter negativ ist, wird die Rahmengröße auf Null festgelegt.

Rückgabewert

Die vorherige Rahmengröße (gemessen in Pixel).

Hinweise

Diese Methode sendet die PGM_SETBORDER Nachricht, die im Windows SDK beschrieben wird.

Beispiel

Im folgenden Beispiel wird ein Pager-Steuerelement erstellt. Anschließend wird die CPagerCtrl::SetChild-Methode verwendet, um dem Pager-Steuerelement ein sehr langes Schaltflächensteuerelement zuzuordnen. Im Beispiel wird dann die CPagerCtrl::SetButtonSize-Methode verwendet, um die Höhe des Pager-Steuerelements auf 20 Pixel festzulegen, und die CPagerCtrl::SetBorder-Methode , um die Rahmenstärke auf 1 Pixel festzulegen.

// 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

Legt die Schaltflächengröße des aktuellen Pager-Steuerelements fest.

int SetButtonSize(int iButtonSize);

Parameter

iButtonSize
[in] Die neue Schaltflächengröße in Pixel.

Rückgabewert

Die vorherige Schaltflächengröße (gemessen in Pixel).

Hinweise

Diese Methode sendet die PGM_SETBUTTONSIZE Nachricht, die im Windows SDK beschrieben wird.

Wenn das Pager-Steuerelement die PGS_HORZ Formatvorlage aufweist, bestimmt die Schaltflächengröße die Breite der Pagerschaltflächen, und wenn das Pager-Steuerelement die PGS_VERT Format aufweist, bestimmt die Schaltflächengröße die Höhe der Pager-Schaltflächen. Die Standardmäßige Schaltflächengröße beträgt drei Viertel der Breite der Bildlaufleiste, und die mindeste Schaltflächengröße beträgt 12 Pixel. Weitere Informationen finden Sie unter Pager-Steuerelementformatvorlagen.

Beispiel

Im folgenden Beispiel wird ein Pager-Steuerelement erstellt. Anschließend wird die CPagerCtrl::SetChild-Methode verwendet, um dem Pager-Steuerelement ein sehr langes Schaltflächensteuerelement zuzuordnen. Im Beispiel wird dann die CPagerCtrl::SetButtonSize-Methode verwendet, um die Höhe des Pager-Steuerelements auf 20 Pixel festzulegen, und die CPagerCtrl::SetBorder-Methode , um die Rahmenstärke auf 1 Pixel festzulegen.

// 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

Legt das enthaltene Fenster für das aktuelle Pager-Steuerelement fest.

void SetChild(HWND hwndChild);

Parameter

hwndChild
[in] Behandeln Sie das zu enthaltende Fenster.

Hinweise

Diese Methode sendet die PGM_SETCHILD Nachricht, die im Windows SDK beschrieben wird.

Diese Methode ändert das übergeordnete Element des enthaltenen Fensters nicht. es weist dem Pager-Steuerelement nur ein Fensterhandle zum Scrollen zu. In den meisten Fällen ist das enthaltene Fenster ein untergeordnetes Fenster des Pager-Steuerelements.

Beispiel

Im folgenden Beispiel wird ein Pager-Steuerelement erstellt. Anschließend wird die CPagerCtrl::SetChild-Methode verwendet, um dem Pager-Steuerelement ein sehr langes Schaltflächensteuerelement zuzuordnen. Im Beispiel wird dann die CPagerCtrl::SetButtonSize-Methode verwendet, um die Höhe des Pager-Steuerelements auf 20 Pixel festzulegen, und die CPagerCtrl::SetBorder-Methode , um die Rahmenstärke auf 1 Pixel festzulegen.

// 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

Legt die Bildlaufposition des aktuellen Pager-Steuerelements fest.

void SetScrollPos(int iPos);

Parameter

iPos
[in] Die neue Bildlaufposition in Pixeln.

Hinweise

Diese Methode sendet die PGM_SETPOS Nachricht, die im Windows SDK beschrieben wird.

Siehe auch

CPagerCtrl-Klasse
Hierarchiediagramm
Pager-Steuerelemente