Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kelas CPagerCtrl membungkus kontrol pager Windows, yang dapat menggulir ke tampilan jendela yang terkandung yang tidak sesuai dengan jendela yang berisi.
Sintaks
class CPagerCtrl : public CWnd
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| CPagerctrl::CPagerctrl | Membuat CPagerCtrl objek. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| CPagerctrl::Create | Membuat kontrol pager dengan gaya tertentu dan melampirkannya ke objek saat ini CPagerCtrl . |
| CPagerctrl::CreateEx | Membuat kontrol pager dengan gaya yang diperluas yang ditentukan dan melampirkannya ke objek saat ini CPagerCtrl . |
| CPagerctrl::ForwardMouse | Mengaktifkan atau menonaktifkan penerusan WM_MOUSEMOVE pesan ke jendela yang terkandung dalam kontrol pager saat ini. |
| CPagerCtrl::GetBkColor | Mengambil warna latar belakang kontrol pager saat ini. |
| CPagerctrl::GetBorder | Mengambil ukuran batas kontrol pager saat ini. |
| CPagerctrl::GetButtonsize | Mengambil ukuran tombol kontrol pager saat ini. |
| CPagerctrl::GetButtonState | Mengambil status tombol yang ditentukan di kontrol pager saat ini. |
| CPagerCtrl::GetDropTarget | Mengambil antarmuka IDropTarget untuk kontrol pager saat ini. |
| CPagerCtrl::GetScrollPos | Mengambil posisi gulir kontrol pager saat ini. |
| CPagerctrl::IsButtonDepressed | Menunjukkan apakah tombol yang ditentukan dari kontrol pager saat ini dalam pressed status. |
| CPagerCtrl::IsButtonGrayed | Menunjukkan apakah tombol yang ditentukan dari kontrol pager saat ini dalam grayed status. |
| CPagerCtrl::IsButtonHot | Menunjukkan apakah tombol yang ditentukan dari kontrol pager saat ini dalam hot status. |
| CPagerCtrl::IsButtonInvisible | Menunjukkan apakah tombol yang ditentukan dari kontrol pager saat ini dalam invisible status. |
| CPagerctrl::IsButtonnormal | Menunjukkan apakah tombol yang ditentukan dari kontrol pager saat ini dalam normal status. |
| CPagerCtrl::RecalcSize | Menyebabkan kontrol pager saat ini menghitung ulang ukuran jendela yang terkandung. |
| CPagerCtrl::SetBkColor | Mengatur warna latar belakang kontrol pager saat ini. |
| CPagerCtrl::SetBorder | Mengatur ukuran batas kontrol pager saat ini. |
| CPagerctrl::SetButtonSize | Mengatur ukuran tombol kontrol pager saat ini. |
| CPagerCtrl::SetChild | Mengatur jendela yang terkandung untuk kontrol pager saat ini. |
| CPagerCtrl::SetScrollPos | Mengatur posisi gulir kontrol pager saat ini. |
Keterangan
Kontrol pager adalah jendela yang berisi jendela lain yang linier dan lebih besar dari jendela yang berisi, dan memungkinkan Anda untuk menggulir jendela yang terkandung ke dalam tampilan. Kontrol pager menampilkan dua tombol gulir yang secara otomatis menghilang ketika jendela yang terkandung digulir ke tingkat terjauhnya, dan muncul kembali sebaliknya. Anda dapat membuat kontrol pager yang menggulir secara horizontal atau vertikal.
Misalnya, jika aplikasi Anda memiliki toolbar yang tidak cukup lebar untuk menampilkan semua itemnya, Anda dapat menetapkan toolbar ke kontrol pager dan pengguna akan dapat menggulir toolbar ke kiri atau kanan untuk mengakses semua item. Microsoft Internet Explorer Versi 4.0 (commctrl.dll versi 4.71) memperkenalkan kontrol pager.
Kelas CPagerCtrl ini berasal dari kelas CWnd . Untuk informasi selengkapnya dan ilustrasi kontrol pager, lihat Kontrol Pager.
Hierarki Warisan
CPagerCtrl
Persyaratan
Header: afxcmn.h
CPagerctrl::CPagerctrl
Membuat CPagerCtrl objek.
CPagerCtrl();
Keterangan
Gunakan metode CPagerCtrl::Create atau CPagerCtrl::CreateEx untuk membuat kontrol pager dan melampirkannya ke CPagerCtrl objek.
CPagerctrl::Create
Membuat kontrol pager dengan gaya tertentu dan melampirkannya ke objek saat ini CPagerCtrl .
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parameter
dwStyle
[di] Kombinasi bitwise (OR) gaya jendela dan gaya kontrol pager yang akan diterapkan ke kontrol.
rect
[di] Referensi ke struktur RECT yang berisi posisi dan ukuran kontrol dalam koordinat klien.
pParentWnd
[di] Penunjuk ke objek CWnd yang merupakan jendela induk kontrol. Parameter ini tidak boleh NULL.
Nid
[di] ID kontrol.
Tampilkan Nilai
TRUE jika metode ini berhasil; jika tidak, FALSE.
Keterangan
Untuk membuat kontrol pager, deklarasikan CPagerCtrl variabel, lalu panggil metode CPagerCtrl::Create atau CPagerCtrl::CreateEx pada variabel tersebut.
Contoh
Contoh berikut membuat kontrol pager, lalu menggunakan metode CPagerCtrl::SetChild untuk mengaitkan kontrol tombol yang sangat panjang dengan kontrol pager. Contoh kemudian menggunakan metode CPagerCtrl::SetButtonSize untuk mengatur tinggi kontrol pager ke 20 piksel, dan metode CPagerCtrl::SetBorder untuk mengatur ketebalan batas ke 1 piksel.
// 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
Membuat kontrol pager dengan gaya yang diperluas yang ditentukan dan melampirkannya ke objek saat ini CPagerCtrl .
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parameter
dwExStyle
[di] Kombinasi bitwise dari gaya yang diperluas untuk diterapkan ke kontrol. Untuk informasi selengkapnya, lihat parameter dwExStyle dari fungsi CreateWindowEx .
dwStyle
[di] Kombinasi bitwise (OR) gaya jendela dan gaya kontrol pager yang akan diterapkan ke kontrol.
rect
[di] Referensi ke struktur RECT yang berisi posisi dan ukuran kontrol dalam koordinat klien.
pParentWnd
[di] Penunjuk ke objek CWnd yang merupakan jendela induk kontrol. Parameter ini tidak boleh NULL.
Nid
[di] ID kontrol.
Tampilkan Nilai
TRUE jika metode ini berhasil; jika tidak, FALSE.
Keterangan
Untuk membuat kontrol pager, deklarasikan CPagerCtrl variabel, lalu panggil metode CPagerCtrl::Create atau CPagerCtrl::CreateEx pada variabel tersebut.
CPagerctrl::ForwardMouse
Mengaktifkan atau menonaktifkan penerusan WM_MOUSEMOVE pesan ke jendela yang terkandung dalam kontrol pager saat ini.
void ForwardMouse(BOOL bForward);
Parameter
bForward
[di] TRUE untuk meneruskan pesan mouse, atau FALSE untuk tidak meneruskan pesan mouse.
Keterangan
Metode ini mengirim pesan PGM_FORWARDMOUSE , yang dijelaskan dalam Windows SDK.
CPagerctrl::GetBorder
Mengambil ukuran batas kontrol pager saat ini.
int GetBorder() const;
Tampilkan Nilai
Ukuran batas saat ini, diukur dalam piksel.
Keterangan
Metode ini mengirim pesan PGM_GETBORDER , yang dijelaskan dalam Windows SDK.
Contoh
Contoh berikut menggunakan metode CPagerCtrl::GetBorder untuk mengambil ketebalan batas kontrol pager.
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
Mengambil warna latar belakang kontrol pager saat ini.
COLORREF GetBkColor() const;
Tampilkan Nilai
Nilai COLORREF yang berisi warna latar belakang kontrol pager saat ini.
Keterangan
Metode ini mengirim pesan PGM_GETBKCOLOR , yang dijelaskan dalam Windows SDK.
Contoh
Contoh berikut menggunakan metode CPagerCtrl::SetBkColor untuk mengatur warna latar belakang kontrol pager ke merah, dan metode CPagerCtrl::GetBkColor untuk mengonfirmasi bahwa perubahan dilakukan.
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
Mengambil ukuran tombol kontrol pager saat ini.
int GetButtonSize() const;
Tampilkan Nilai
Ukuran tombol saat ini, diukur dalam piksel.
Keterangan
Metode ini mengirim pesan PGM_GETBUTTONSIZE , yang dijelaskan dalam Windows SDK.
Jika kontrol pager memiliki gaya PGS_HORZ, ukuran tombol menentukan lebar tombol pager, dan jika kontrol pager memiliki gaya PGS_VERT, ukuran tombol menentukan tinggi tombol pager. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
CPagerctrl::GetButtonState
Mengambil status tombol gulir yang ditentukan di kontrol pager saat ini.
DWORD GetButtonState(int iButton) const;
Parameter
iButton
[di] Menunjukkan tombol tempat status diambil. Jika gaya kontrol pager PGS_HORZ, tentukan PGB_TOPORLEFT untuk tombol kiri dan PGB_BOTTOMORRIGHT untuk tombol kanan. Jika gaya kontrol pager PGS_VERT, tentukan PGB_TOPORLEFT untuk tombol atas dan PGB_BOTTOMORRIGHT untuk tombol bawah. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Tampilkan Nilai
Status tombol yang ditentukan oleh parameter iButton . Statusnya adalah PGF_INVISIBLE, PGF_NORMAL, PGF_GRAYED, PGF_DEPRESSED, atau PGF_HOT. Untuk informasi selengkapnya, lihat bagian Nilai Pengembalian dari pesan PGM_GETBUTTONSTATE .
Keterangan
Metode ini mengirim pesan PGM_GETBUTTONSTATE , yang dijelaskan dalam Windows SDK.
CPagerCtrl::GetDropTarget
Mengambil antarmuka IDropTarget untuk kontrol pager saat ini.
IDropTarget* GetDropTarget() const;
Tampilkan Nilai
Penunjuk ke IDropTarget antarmuka untuk kontrol pager saat ini.
Keterangan
IDropTarget adalah salah satu antarmuka yang Anda terapkan untuk mendukung operasi seret dan letakkan di aplikasi Anda.
Metode ini mengirim pesan PGM_GETDROPTARGET , yang dijelaskan dalam Windows SDK. Pemanggil metode ini bertanggung jawab untuk memanggil Release anggota antarmuka IDropTarget ketika antarmuka tidak lagi diperlukan.
CPagerCtrl::GetScrollPos
Mengambil posisi gulir kontrol pager saat ini.
int GetScrollPos() const;
Tampilkan Nilai
Posisi gulir saat ini, diukur dalam piksel.
Keterangan
Metode ini mengirim pesan PGM_GETPOS , yang dijelaskan dalam Windows SDK.
Contoh
Contoh berikut menggunakan metode CPagerCtrl::GetScrollPos untuk mengambil posisi gulir kontrol pager saat ini. Jika kontrol pager belum digulir ke nol, posisi paling kiri, contohnya menggunakan metode CPagerCtrl::SetScrollPos untuk mengatur posisi gulir ke nol.
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
Menunjukkan apakah tombol gulir yang ditentukan dari kontrol pager saat ini dalam keadaan ditekan.
BOOL IsButtonDepressed(int iButton) const;
Parameter
iButton
[di] Menunjukkan tombol tempat status diambil. Jika gaya kontrol pager PGS_HORZ, tentukan PGB_TOPORLEFT untuk tombol kiri dan PGB_BOTTOMORRIGHT untuk tombol kanan. Jika gaya kontrol pager PGS_VERT, tentukan PGB_TOPORLEFT untuk tombol atas dan PGB_BOTTOMORRIGHT untuk tombol bawah. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Tampilkan Nilai
TRUE jika tombol yang ditentukan dalam status ditekan; jika tidak, FALSE.
Keterangan
Metode ini mengirim pesan PGM_GETBUTTONSTATE , yang dijelaskan dalam Windows SDK. Kemudian menguji apakah status yang dikembalikan PGF_DEPRESSED. Untuk informasi selengkapnya, lihat bagian Nilai Pengembalian dari pesan PGM_GETBUTTONSTATE .
CPagerCtrl::IsButtonGrayed
Menunjukkan apakah tombol gulir yang ditentukan dari kontrol pager saat ini dalam keadaan abu-abu.
BOOL IsButtonGrayed(int iButton) const;
Parameter
iButton
[di] Menunjukkan tombol tempat status diambil. Jika gaya kontrol pager PGS_HORZ, tentukan PGB_TOPORLEFT untuk tombol kiri dan PGB_BOTTOMORRIGHT untuk tombol kanan. Jika gaya kontrol pager PGS_VERT, tentukan PGB_TOPORLEFT untuk tombol atas dan PGB_BOTTOMORRIGHT untuk tombol bawah. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Tampilkan Nilai
TRUE jika tombol yang ditentukan dalam status abu-abu; jika tidak, FALSE.
Keterangan
Metode ini mengirim pesan PGM_GETBUTTONSTATE , yang dijelaskan dalam Windows SDK. Kemudian menguji apakah status yang dikembalikan PGF_GRAYED. Untuk informasi selengkapnya, lihat bagian Nilai Pengembalian dari pesan PGM_GETBUTTONSTATE .
CPagerCtrl::IsButtonHot
Menunjukkan apakah tombol gulir yang ditentukan dari kontrol pager saat ini dalam status panas.
BOOL IsButtonHot(int iButton) const;
Parameter
iButton
[di] Menunjukkan tombol tempat status diambil. Jika gaya kontrol pager PGS_HORZ, tentukan PGB_TOPORLEFT untuk tombol kiri dan PGB_BOTTOMORRIGHT untuk tombol kanan. Jika gaya kontrol pager PGS_VERT, tentukan PGB_TOPORLEFT untuk tombol atas dan PGB_BOTTOMORRIGHT untuk tombol bawah. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Tampilkan Nilai
TRUE jika tombol yang ditentukan dalam status panas; jika tidak, FALSE.
Keterangan
Metode ini mengirim pesan PGM_GETBUTTONSTATE , yang dijelaskan dalam Windows SDK. Kemudian menguji apakah status yang dikembalikan PGF_HOT. Untuk informasi selengkapnya, lihat bagian Nilai Pengembalian dari pesan PGM_GETBUTTONSTATE .
CPagerCtrl::IsButtonInvisible
Menunjukkan apakah tombol gulir yang ditentukan dari kontrol pager saat ini dalam status tidak terlihat.
BOOL IsButtonInvisible(int iButton) const;
Parameter
iButton
[di] Menunjukkan tombol tempat status diambil. Jika gaya kontrol pager PGS_HORZ, tentukan PGB_TOPORLEFT untuk tombol kiri dan PGB_BOTTOMORRIGHT untuk tombol kanan. Jika gaya kontrol pager PGS_VERT, tentukan PGB_TOPORLEFT untuk tombol atas dan PGB_BOTTOMORRIGHT untuk tombol bawah. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Tampilkan Nilai
TRUE jika tombol yang ditentukan dalam status tidak terlihat; jika tidak, FALSE.
Keterangan
Windows membuat tombol gulir ke arah tertentu tidak terlihat ketika jendela yang terkandung digulir ke tingkat terjauh karena mengklik tombol lebih lanjut tidak dapat membawa lebih banyak jendela yang terkandung ke dalam tampilan.
Metode ini mengirim pesan PGM_GETBUTTONSTATE , yang dijelaskan dalam Windows SDK. Kemudian menguji apakah status yang dikembalikan PGF_INVISIBLE. Untuk informasi selengkapnya, lihat bagian Nilai Pengembalian dari pesan PGM_GETBUTTONSTATE .
Contoh
Contoh berikut menggunakan metode CPagerCtrl::IsButtonInvisible untuk menentukan apakah tombol gulir kiri dan kanan kontrol pager terlihat.
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
Menunjukkan apakah tombol gulir yang ditentukan dari kontrol pager saat ini dalam status normal.
BOOL IsButtonNormal(int iButton) const;
Parameter
iButton
[di] Menunjukkan tombol tempat status diambil. Jika gaya kontrol pager PGS_HORZ, tentukan PGB_TOPORLEFT untuk tombol kiri dan PGB_BOTTOMORRIGHT untuk tombol kanan. Jika gaya kontrol pager PGS_VERT, tentukan PGB_TOPORLEFT untuk tombol atas dan PGB_BOTTOMORRIGHT untuk tombol bawah. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Tampilkan Nilai
TRUE jika tombol yang ditentukan dalam keadaan normal; jika tidak, FALSE.
Keterangan
Metode ini mengirim pesan PGM_GETBUTTONSTATE , yang dijelaskan dalam Windows SDK. Kemudian menguji apakah status yang dikembalikan PGF_NORMAL. Untuk informasi selengkapnya, lihat bagian Nilai Pengembalian dari pesan PGM_GETBUTTONSTATE .
CPagerCtrl::RecalcSize
Menyebabkan kontrol pager saat ini menghitung ulang ukuran jendela yang terkandung.
void RecalcSize();
Keterangan
Metode ini mengirim pesan PGM_RECALCSIZE , yang dijelaskan dalam Windows SDK. Akibatnya, kontrol pager mengirimkan pemberitahuan PGN_CALCSIZE untuk mendapatkan dimensi jendela yang dapat digulir.
Contoh 1
Contoh berikut menggunakan metode CPagerCtrl::RecalcSize untuk meminta kontrol pager saat ini untuk menghitung ulang ukurannya.
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."));
}
Contoh 2
Contoh berikut menggunakan pantulan pesan untuk mengaktifkan kontrol pager untuk menghitung ulang ukurannya sendiri alih-alih mengharuskan dialog induk kontrol untuk melakukan penghitungan. Contoh ini memperoleh MyPagerCtrl kelas dari kelas CPagerCtrl, lalu menggunakan peta pesan untuk mengaitkan pemberitahuan PGN_CALCSIZE dengan OnCalcsize penangan pemberitahuan. Dalam contoh ini, handler pemberitahuan mengatur lebar dan tinggi kontrol pager ke nilai tetap.
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
Mengatur warna latar belakang kontrol pager saat ini.
COLORREF SetBkColor(COLORREF clrBk);
Parameter
clrBk
[di] Nilai COLORREF yang berisi warna latar belakang baru kontrol pager.
Tampilkan Nilai
Nilai COLORREF yang berisi warna latar belakang sebelumnya dari kontrol pager.
Keterangan
Metode ini mengirim pesan PGM_SETBKCOLOR , yang dijelaskan dalam Windows SDK.
Contoh
Contoh berikut menggunakan metode CPagerCtrl::SetBkColor untuk mengatur warna latar belakang kontrol pager ke merah, dan metode CPagerCtrl::GetBkColor untuk mengonfirmasi bahwa perubahan dilakukan.
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
Mengatur ukuran batas kontrol pager saat ini.
int SetBorder(int iBorder);
Parameter
iBorder
[di] Ukuran batas baru, diukur dalam piksel. Jika parameter iBorder negatif, ukuran batas diatur ke nol.
Tampilkan Nilai
Ukuran batas sebelumnya, diukur dalam piksel.
Keterangan
Metode ini mengirim pesan PGM_SETBORDER , yang dijelaskan dalam Windows SDK.
Contoh
Contoh berikut membuat kontrol pager, lalu menggunakan metode CPagerCtrl::SetChild untuk mengaitkan kontrol tombol yang sangat panjang dengan kontrol pager. Contoh kemudian menggunakan metode CPagerCtrl::SetButtonSize untuk mengatur tinggi kontrol pager ke 20 piksel, dan metode CPagerCtrl::SetBorder untuk mengatur ketebalan batas ke 1 piksel.
// 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
Mengatur ukuran tombol kontrol pager saat ini.
int SetButtonSize(int iButtonSize);
Parameter
iButtonSize
[di] Ukuran tombol baru, diukur dalam piksel.
Tampilkan Nilai
Ukuran tombol sebelumnya, diukur dalam piksel.
Keterangan
Metode ini mengirim pesan PGM_SETBUTTONSIZE , yang dijelaskan dalam Windows SDK.
Jika kontrol pager memiliki gaya PGS_HORZ, ukuran tombol menentukan lebar tombol pager, dan jika kontrol pager memiliki gaya PGS_VERT, ukuran tombol menentukan tinggi tombol pager. Ukuran tombol default adalah tiga perempat dari lebar bilah gulir, dan ukuran tombol minimum adalah 12 piksel. Untuk informasi selengkapnya, lihat Gaya Kontrol Pager.
Contoh
Contoh berikut membuat kontrol pager, lalu menggunakan metode CPagerCtrl::SetChild untuk mengaitkan kontrol tombol yang sangat panjang dengan kontrol pager. Contoh kemudian menggunakan metode CPagerCtrl::SetButtonSize untuk mengatur tinggi kontrol pager ke 20 piksel, dan metode CPagerCtrl::SetBorder untuk mengatur ketebalan batas ke 1 piksel.
// 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
Mengatur jendela yang terkandung untuk kontrol pager saat ini.
void SetChild(HWND hwndChild);
Parameter
hwndChild
[di] Tangani ke jendela yang akan dimuat.
Keterangan
Metode ini mengirim pesan PGM_SETCHILD , yang dijelaskan dalam Windows SDK.
Metode ini tidak mengubah induk jendela yang terkandung; ini hanya menetapkan handel jendela ke kontrol pager untuk menggulir. Dalam kebanyakan kasus, jendela yang terkandung akan menjadi jendela anak dari kontrol pager.
Contoh
Contoh berikut membuat kontrol pager, lalu menggunakan metode CPagerCtrl::SetChild untuk mengaitkan kontrol tombol yang sangat panjang dengan kontrol pager. Contoh kemudian menggunakan metode CPagerCtrl::SetButtonSize untuk mengatur tinggi kontrol pager ke 20 piksel, dan metode CPagerCtrl::SetBorder untuk mengatur ketebalan batas ke 1 piksel.
// 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
Mengatur posisi gulir kontrol pager saat ini.
void SetScrollPos(int iPos);
Parameter
iPos
[di] Posisi gulir baru, diukur dalam piksel.
Keterangan
Metode ini mengirim pesan PGM_SETPOS , yang dijelaskan dalam Windows SDK.