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