Bagikan melalui


CSliderCtrl Kelas

Menyediakan fungsionalitas kontrol slider umum Windows.

Sintaks

class CSliderCtrl : public CWnd

Anggota

Konstruktor Publik

Nama Deskripsi
CSliderCtrl::CSliderCtrl Membuat CSliderCtrl objek.

Metode Publik

Nama Deskripsi
CSliderCtrl::ClearSel Menghapus pilihan saat ini dalam kontrol penggeser.
CSliderCtrl::ClearTics Menghapus tanda centang saat ini dari kontrol penggerak.
CSliderCtrl::Create Membuat kontrol penggeser dan melampirkannya ke CSliderCtrl objek.
CSliderCtrl::CreateEx Membuat kontrol penggeser dengan gaya perluasan Windows yang ditentukan dan melampirkannya ke CSliderCtrl objek.
CSliderCtrl::GetBuddy Mengambil handel ke jendela teman kontrol slider di lokasi tertentu.
CSliderCtrl::GetChannelRect Mengambil ukuran saluran kontrol slider.
CSliderCtrl::GetLineSize Mengambil ukuran garis kontrol slider.
CSliderCtrl::GetNumTics Mengambil jumlah tanda centang dalam kontrol penggunjuk.
CSliderCtrl::GetPageSize Mengambil ukuran halaman kontrol penggerak.
CSliderCtrl::GetPos Mengambil posisi slider saat ini.
CSliderCtrl::GetRange Mengambil posisi minimum dan maksimum untuk penggerak.
CSliderCtrl::GetRangeMax Mengambil posisi maksimum untuk pengguncuran.
CSliderCtrl::GetRangeMin Mengambil posisi minimum untuk pengguncuran.
CSliderCtrl::GetSelection Mengambil rentang pilihan saat ini.
CSliderCtrl::GetThumbLength Mengambil panjang slider dalam kontrol trackbar saat ini.
CSliderCtrl::GetThumbRect Mengambil ukuran jempol kontrol slider.
CSliderCtrl::GetTic Mengambil posisi tanda centang yang ditentukan.
CSliderCtrl::GetTicArray Mengambil array posisi tanda centang untuk kontrol penggunjuk.
CSliderCtrl::GetTicPos Mengambil posisi tanda centang yang ditentukan, dalam koordinat klien.
CSliderCtrl::GetToolTips Mengambil handel ke kontrol tipsalat yang ditetapkan ke kontrol slider, jika ada.
CSliderCtrl::SetBuddy Menetapkan jendela sebagai jendela teman untuk kontrol penggerak.
CSliderCtrl::SetLineSize Mengatur ukuran garis kontrol penggerak.
CSliderCtrl::SetPageSize Menyetel ukuran halaman kontrol penggerak.
CSliderCtrl::SetPos Mengatur posisi slider saat ini.
CSliderCtrl::SetRange Mengatur posisi minimum dan maksimum untuk penggeling.
CSliderCtrl::SetRangeMax Mengatur posisi maksimum untuk pengguncuran.
CSliderCtrl::SetRangeMin Mengatur posisi minimum untuk pengguncuran.
CSliderCtrl::SetSelection Mengatur rentang pilihan saat ini.
CSliderCtrl::SetThumbLength Mengatur panjang pengguncur di kontrol trackbar saat ini.
CSliderCtrl::SetTic Mengatur posisi tanda centang yang ditentukan.
CSliderCtrl::SetTicFreq Mengatur frekuensi tanda centang per kenaikan kontrol penggeser.
CSliderCtrl::SetTipSide Memposisikan kontrol tipsalat yang digunakan oleh kontrol trackbar.
CSliderCtrl::SetToolTips Menetapkan kontrol tipsalat ke kontrol penggiser.

Keterangan

"Kontrol slider" (juga dikenal sebagai trackbar) adalah jendela yang berisi pengguncur dan tanda centang opsional. Saat pengguna memindahkan slider, menggunakan mouse atau tombol arah, kontrol mengirim pesan pemberitahuan untuk menunjukkan perubahan.

Kontrol slider berguna saat Anda ingin pengguna memilih nilai diskrit atau sekumpulan nilai berturut-turut dalam rentang. Misalnya, Anda mungkin menggunakan kontrol slider untuk memungkinkan pengguna mengatur laju pengulangan keyboard dengan memindahkan pengguncur ke tanda centang tertentu.

Kontrol ini (dan oleh karena itu CSliderCtrl kelas) hanya tersedia untuk program yang berjalan di bawah Windows 95/98 dan Windows NT versi 3.51 dan yang lebih baru.

Pengguncur berpindah dengan kenaikan yang Anda tentukan saat Membuatnya. Misalnya, jika Anda menentukan bahwa slider harus memiliki rentang lima, pengguncur hanya dapat menempati enam posisi: posisi di sisi kiri kontrol penggunjuk dan satu posisi untuk setiap kenaikan dalam rentang. Biasanya, masing-masing posisi ini diidentifikasi oleh tanda centang.

Anda membuat slider dengan menggunakan konstruktor dan Create fungsi CSliderCtrlanggota . Setelah membuat kontrol pengguncur, Anda dapat menggunakan fungsi CSliderCtrl anggota untuk mengubah banyak propertinya. Perubahan yang bisa Anda buat termasuk mengatur posisi minimum dan maksimum untuk pengguncur, menggambar tanda centang, mengatur rentang pilihan, dan memposisikan ulang penggoser.

Untuk informasi selengkapnya tentang menggunakan CSliderCtrl, lihat Kontrol dan Menggunakan CSliderCtrl.

Hierarki Warisan

CObject

CCmdTarget

CWnd

CSliderCtrl

Persyaratan

Header: afxcmn.h

CSliderCtrl::ClearSel

Menghapus pilihan saat ini dalam kontrol penggeser.

void ClearSel(BOOL bRedraw = FALSE);

Parameter

bRedraw
Bendera redraw. Jika parameter ini adalah TRUE, penggeser digambar ulang setelah pemilihan dibersihkan; jika tidak, penggeser tidak digambar ulang.

CSliderCtrl::ClearTics

Menghapus tanda centang saat ini dari kontrol penggerak.

void ClearTics(BOOL bRedraw = FALSE);

Parameter

bRedraw
Bendera redraw. Jika parameter ini adalah TRUE, penggeser digambar ulang setelah tanda centang dibersihkan; jika tidak, penggeser tidak digambar ulang.

CSliderCtrl::Create

Membuat kontrol penggeser dan melampirkannya ke CSliderCtrl objek.

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

Parameter

dwStyle
Menentukan gaya kontrol penggerak. Terapkan kombinasi gaya kontrol slider apa pun, yang dijelaskan dalam Windows SDK, ke kontrol.

rect
Menentukan ukuran dan posisi kontrol penggerak. Ini bisa berupa CRect objek atau RECT struktur.

pParentWnd
Menentukan jendela induk kontrol slider, biasanya .CDialog Ini tidak boleh NULL.

nID
Menentukan ID kontrol penggerak.

Tampilkan Nilai

Bukan nol jika inisialisasi berhasil; jika tidak, 0.

Keterangan

Anda membangun CSliderCtrl dalam dua langkah. Pertama, panggil konstruktor, lalu panggil Create, yang membuat kontrol penggeser dan melampirkannya ke CSliderCtrl objek.

Bergantung pada nilai yang diatur untuk dwStyle, kontrol penggunjuk dapat memiliki orientasi vertikal atau horizontal. Ini dapat memiliki tanda centang di kedua sisi, kedua sisi, atau tidak sama sekali. Ini juga dapat digunakan untuk menentukan rentang nilai berturut-turut.

Untuk menerapkan gaya jendela yang diperluas ke kontrol slider, panggil CreateEx alih-alih Create.

CSliderCtrl::CreateEx

Membuat kontrol (jendela anak) dan mengaitkannya dengan CSliderCtrl objek.

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

Parameter

dwExStyle
Menentukan gaya kontrol yang diperluas yang sedang dibuat. Untuk daftar gaya Windows yang diperluas, lihat dwExStyle parameter untuk CreateWindowEx di Windows SDK.

dwStyle
Menentukan gaya kontrol penggerak. Terapkan kombinasi gaya kontrol slider apa pun, yang dijelaskan dalam Windows SDK, ke kontrol.

rect
Referensi ke struktur yang RECT menjelaskan ukuran dan posisi jendela yang akan dibuat, dalam koordinat klien .pParentWnd

pParentWnd
Penunjuk ke jendela yang merupakan induk kontrol.

nID
ID jendela anak kontrol.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0.

Keterangan

Gunakan CreateEx alih-alih Create untuk menerapkan gaya Windows yang diperluas, yang ditentukan oleh preface WS_EX_gaya windows yang diperluas .

CSliderCtrl::CSliderCtrl

Membuat CSliderCtrl objek.

CSliderCtrl();

CSliderCtrl::GetBuddy

Mengambil handel ke jendela teman kontrol slider di lokasi tertentu.

CWnd* GetBuddy(BOOL fLocation = TRUE) const;

Parameter

fLocation
Nilai Boolean yang menunjukkan mana dari dua pegangan jendela teman yang akan diambil. Dapat berupa salah satu dari nilai berikut:

  • TRUE Mengambil handel ke teman di sebelah kiri penggeling. Jika kontrol pengguncur menggunakan TBS_VERT gaya, pesan akan mengambil teman di atas slider.

  • FALSE Mengambil handel ke teman di sebelah kanan penggeser. Jika kontrol pengguncur menggunakan TBS_VERT gaya, pesan akan mengambil teman di bawah penggiser.

Tampilkan Nilai

Penunjuk ke CWnd objek yang merupakan jendela teman di lokasi yang ditentukan oleh fLocation, atau NULL jika tidak ada jendela teman di lokasi tersebut.

Keterangan

Fungsi anggota ini mengimplementasikan perilaku pesan TBM_GETBUDDYWin32 , seperti yang dijelaskan dalam Windows SDK. Untuk deskripsi gaya kontrol penggeser, lihat Gaya Kontrol Trackbar di Windows SDK.

CSliderCtrl::GetChannelRect

Mengambil ukuran dan posisi persegi panjang pembatas untuk saluran kontrol slider.

void GetChannelRect(LPRECT lprc) const;

Parameter

lprc
Penunjuk ke CRect objek yang berisi ukuran dan posisi persegi panjang pembatas saluran saat fungsi kembali.

Keterangan

Saluran adalah area di mana penggelser bergerak dan yang berisi sorotan saat rentang dipilih.

CSliderCtrl::GetLineSize

Mengambil ukuran garis untuk kontrol penggerak.

int GetLineSize() const;

Tampilkan Nilai

Ukuran garis untuk kontrol penggerak.

Keterangan

Ukuran garis memengaruhi berapa banyak penggunjuk bergerak untuk TB_LINEUP pemberitahuan dan TB_LINEDOWN . Pengaturan default untuk ukuran garis adalah 1.

CSliderCtrl::GetNumTics

Mengambil jumlah tanda centang dalam kontrol penggunjuk.

UINT GetNumTics() const;

Tampilkan Nilai

Jumlah tanda centang dalam kontrol penggerak.

CSliderCtrl::GetPageSize

Mengambil ukuran halaman untuk kontrol penggerak.

int GetPageSize() const;

Tampilkan Nilai

Ukuran halaman untuk kontrol penggerak.

Keterangan

Ukuran halaman memengaruhi berapa banyak perpindahan penggunjuk untuk TB_PAGEUP pemberitahuan dan TB_PAGEDOWN .

CSliderCtrl::GetPos

Mengambil posisi slider saat ini dalam kontrol penggerak.

int GetPos() const;

Tampilkan Nilai

Posisi saat ini.

CSliderCtrl::GetRange

Mengambil posisi maksimum dan minimum untuk slider dalam kontrol penggerak.

void GetRange(
    int& nMin,
    int& nMax) const;

Parameter

nMin
Referensi ke bilangan bulat yang menerima posisi minimum.

nMax
Referensi ke bilangan bulat yang menerima posisi maksimum.

Keterangan

Fungsi ini menyalin nilai ke dalam bilangan bulat yang dirujuk oleh nMin dan nMax.

CSliderCtrl::GetRangeMax

Mengambil posisi maksimum untuk pengguncur dalam kontrol penggunjuk.

int GetRangeMax() const;

Tampilkan Nilai

Posisi maksimum kontrol.

CSliderCtrl::GetRangeMin

Mengambil posisi minimum untuk pengguncur dalam kontrol penggunjuk.

int GetRangeMin() const;

Tampilkan Nilai

Posisi minimum kontrol.

CSliderCtrl::GetSelection

Mengambil posisi awal dan akhir dari pilihan saat ini dalam kontrol penggiser.

void GetSelection(
    int& nMin,
    int& nMax) const;

Parameter

nMin
Referensi ke bilangan bulat yang menerima posisi awal pilihan saat ini.

nMax
Referensi ke bilangan bulat yang menerima posisi akhir pilihan saat ini.

CSliderCtrl::GetThumbLength

Mengambil panjang slider dalam kontrol trackbar saat ini.

int GetThumbLength() const;

Tampilkan Nilai

Panjang slider, dalam piksel.

Keterangan

Metode ini mengirim TBM_GETTHUMBLENGTH pesan, yang dijelaskan dalam Windows SDK.

CSliderCtrl::GetThumbRect

Mengambil ukuran dan posisi persegi panjang pembatas untuk pengguncur (jempol) dalam kontrol pengguncur.

void GetThumbRect(LPRECT lprc) const;

Parameter

lprc
Penunjuk ke CRect objek yang berisi persegi panjang pembatas untuk slider saat fungsi kembali.

CSliderCtrl::GetTic

Mengambil posisi tanda centang dalam kontrol penggerak.

int GetTic(int nTic) const;

Parameter

nTic
Indeks berbasis nol mengidentifikasi tanda centang.

Tampilkan Nilai

Posisi tanda centang yang ditentukan atau - 1 jika nTic tidak menentukan indeks yang valid.

CSliderCtrl::GetTicArray

Mengambil alamat array yang berisi posisi tanda centang untuk kontrol slider.

DWORD* GetTicArray() const;

Tampilkan Nilai

Alamat array yang berisi posisi tanda centang untuk kontrol slider.

CSliderCtrl::GetTicPos

Mengambil posisi fisik saat ini dari tanda centang dalam kontrol penggiser.

int GetTicPos(int nTic) const;

Parameter

nTic
Indeks berbasis nol mengidentifikasi tanda centang.

Tampilkan Nilai

Posisi fisik, dalam koordinat klien, dari tanda centang yang ditentukan atau - 1 jika nTic tidak menentukan indeks yang valid.

CSliderCtrl::GetToolTips

Mengambil handel ke kontrol tipsalat yang ditetapkan ke kontrol slider, jika ada.

CToolTipCtrl* GetToolTips() const;

Tampilkan Nilai

Penunjuk ke CToolTipCtrl objek, atau NULL jika tipsalat tidak digunakan. Jika kontrol pengguncur tidak menggunakan TBS_TOOLTIPS gaya, nilai yang dikembalikan adalah NULL.

Keterangan

Fungsi anggota ini mengimplementasikan perilaku pesan TBM_GETTOOLTIPSWin32 , seperti yang dijelaskan dalam Windows SDK. Perhatikan bahwa fungsi anggota ini mengembalikan CToolTipCtrl objek alih-alih handel ke kontrol.

Untuk deskripsi gaya kontrol penggeser, lihat Gaya Kontrol Trackbar di Windows SDK.

CSliderCtrl::SetBuddy

Menetapkan jendela sebagai jendela teman untuk kontrol penggerak.

CWnd* SetBuddy(
    CWnd* pWndBuddy,
    BOOL fLocation = TRUE);

Parameter

pWndBuddy
Penunjuk ke CWnd objek yang akan diatur sebagai teman kontrol penggelis.

fLocation
Nilai yang menentukan lokasi untuk menampilkan jendela teman. Nilai ini bisa menjadi salah satu dari berikut ini:

  • TRUE Teman akan muncul di sebelah kiri trackbar jika kontrol trackbar menggunakan TBS_HORZ gaya . Jika trackbar menggunakan TBS_VERT gaya, teman muncul di atas kontrol trackbar.

  • FALSE Teman akan muncul di sebelah kanan trackbar jika kontrol trackbar menggunakan TBS_HORZ gaya . Jika trackbar menggunakan TBS_VERT gaya, teman muncul di bawah kontrol trackbar.

Tampilkan Nilai

Penunjuk ke CWnd objek yang sebelumnya ditetapkan ke kontrol slider di lokasi tersebut.

Keterangan

Fungsi anggota ini mengimplementasikan perilaku pesan TBM_SETBUDDYWin32 , seperti yang dijelaskan dalam Windows SDK. Perhatikan bahwa fungsi anggota ini menggunakan penunjuk ke CWnd objek, bukan handel jendela untuk nilai pengembalian dan parameternya.

Untuk deskripsi gaya kontrol penggeser, lihat Gaya Kontrol Trackbar di Windows SDK.

CSliderCtrl::SetLineSize

Mengatur ukuran garis untuk kontrol penggerak.

int SetLineSize(int nSize);

Parameter

nSize
Ukuran garis baru kontrol penggerak.

Tampilkan Nilai

Ukuran baris sebelumnya.

Keterangan

Ukuran garis memengaruhi berapa banyak penggunjuk bergerak untuk TB_LINEUP pemberitahuan dan TB_LINEDOWN .

CSliderCtrl::SetPageSize

Mengatur ukuran halaman untuk kontrol penggerak.

int SetPageSize(int nSize);

Parameter

nSize
Ukuran halaman baru kontrol penggerak.

Tampilkan Nilai

Ukuran halaman sebelumnya.

Keterangan

Ukuran halaman memengaruhi berapa banyak perpindahan penggunjuk untuk TB_PAGEUP pemberitahuan dan TB_PAGEDOWN .

CSliderCtrl::SetPos

Mengatur posisi slider saat ini dalam kontrol penggunjuk.

void SetPos(int nPos);

Parameter

nPos
Menentukan posisi pengguncur baru.

CSliderCtrl::SetRange

Mengatur rentang (posisi minimum dan maksimum) untuk penggelis dalam kontrol penggunjuk.

void SetRange(
    int nMin,
    int nMax,
    BOOL bRedraw = FALSE);

Parameter

nMin
Posisi minimum untuk penggerak.

nMax
Posisi maksimum untuk pengguncuran.

bRedraw
Bendera redraw. Jika parameter ini adalah TRUE, slider akan digambar ulang setelah rentang diatur; jika tidak, slider tidak digambar ulang.

CSliderCtrl::SetRangeMax

Mengatur rentang maksimum untuk penggelis dalam kontrol penggerak.

void SetRangeMax(
    int nMax,
    BOOL bRedraw = FALSE);

Parameter

nMax
Posisi maksimum untuk pengguncuran.

bRedraw
Bendera redraw. Jika parameter ini adalah TRUE, slider akan digambar ulang setelah rentang diatur; jika tidak, slider tidak digambar ulang.

CSliderCtrl::SetRangeMin

Mengatur rentang minimum untuk pengguncur dalam kontrol penggunjuk.

void SetRangeMin(
    int nMin,
    BOOL bRedraw = FALSE);

Parameter

nMin
Posisi minimum untuk penggerak.

bRedraw
Bendera redraw. Jika parameter ini adalah TRUE, slider akan digambar ulang setelah rentang diatur; jika tidak, slider tidak digambar ulang.

CSliderCtrl::SetSelection

Mengatur posisi awal dan akhir untuk pilihan saat ini dalam kontrol penggerak.

void SetSelection(
    int nMin,
    int nMax);

Parameter

nMin
Posisi awal untuk penggagas.

nMax
Posisi akhir untuk pengguncuran.

CSliderCtrl::SetThumbLength

Mengatur panjang pengguncur di kontrol trackbar saat ini.

void SetThumbLength(int nLength);

Parameter

nLength
[di] Panjang slider, dalam piksel.

Keterangan

Metode ini mengharuskan kontrol trackbar diatur ke TBS_FIXEDLENGTH gaya.

Metode ini mengirim TBM_SETTHUMBLENGTH pesan, yang dijelaskan dalam Windows SDK.

Contoh

Contoh kode pertama mendefinisikan variabel, m_sliderCtrl, yang digunakan untuk mengakses kontrol trackbar saat ini. Contoh ini juga mendefinisikan variabel, thumbLength, yang digunakan untuk menyimpan panjang default komponen jempol kontrol trackbar. Variabel ini digunakan dalam contoh berikutnya.

// Variable to access the slider control.
CSliderCtrl m_sliderCtrl;
// Length of the slider control's thumb.
int thumbLength;

Contoh kode berikutnya mengatur komponen jempol kontrol trackbar menjadi dua kali panjang defaultnya.

// Add extra initialization.

// Modify the size of the slider control's thumb.
// First, set the TBS_FIXEDLENGTH style.
m_sliderCtrl.ModifyStyle(0, TBS_FIXEDLENGTH);
thumbLength = m_sliderCtrl.GetThumbLength();
m_sliderCtrl.SetThumbLength(thumbLength * 2);

// End extra initialization.

CSliderCtrl::SetTic

Mengatur posisi tanda centang dalam kontrol penggelser.

BOOL SetTic(int nTic);

Parameter

nTic
Posisi tanda centang. Parameter ini harus menentukan nilai positif.

Tampilkan Nilai

Bukan nol jika tanda centang diatur; jika tidak, 0.

CSliderCtrl::SetTicFreq

Mengatur frekuensi dengan tanda centang yang ditampilkan dalam penggeser.

void SetTicFreq(int nFreq);

Parameter

nFreq
Frekuensi tanda centang.

Keterangan

Misalnya, jika frekuensi diatur ke 2, tanda centang ditampilkan untuk setiap kenaikan lainnya dalam rentang penggeser. Pengaturan default untuk frekuensi adalah 1 (yaitu, setiap kenaikan dalam rentang dikaitkan dengan tanda centang).

Anda harus membuat kontrol dengan TBS_AUTOTICKS gaya untuk menggunakan fungsi ini. Untuk informasi selengkapnya, lihat CSliderCtrl::Create .

CSliderCtrl::SetTipSide

Memposisikan kontrol tipsalat yang digunakan oleh kontrol trackbar.

int SetTipSide(int nLocation);

Parameter

nLocation
Nilai yang mewakili lokasi untuk menampilkan kontrol tipsalat. Untuk daftar nilai yang mungkin, lihat pesan TBM_SETTIPSIDEWin32 , seperti yang dijelaskan di Windows SDK.

Tampilkan Nilai

Nilai yang mewakili lokasi kontrol tipsalat sebelumnya. Nilai yang dikembalikan sama dengan salah satu nilai yang mungkin untuk nLocation.

Keterangan

Fungsi anggota ini mengimplementasikan perilaku pesan TBM_SETTIPSIDEWin32 , seperti yang dijelaskan dalam Windows SDK. Kontrol slider yang menggunakan tipsalat TBS_TOOLTIPS tampilan gaya. Untuk deskripsi gaya kontrol penggeser, lihat Gaya Kontrol Trackbar di Windows SDK.

CSliderCtrl::SetToolTips

Menetapkan kontrol tipsalat ke kontrol penggiser.

void SetToolTips(CToolTipCtrl* pWndTip);

Parameter

pWndTip
Penunjuk ke objek yang CToolTipCtrl berisi tipsalat untuk digunakan dengan kontrol penggerak.

Keterangan

Fungsi anggota ini mengimplementasikan perilaku pesan TBM_SETTOOLTIPSWin32 , seperti yang dijelaskan dalam Windows SDK. Saat kontrol penggeser dibuat dengan TBS_TOOLTIPS gaya, kontrol tipsalat default yang muncul di samping penggeser, menampilkan posisi penggeser saat ini. Untuk deskripsi gaya kontrol penggeser, lihat Gaya Kontrol Trackbar di Windows SDK.

Lihat juga

Sampel MFC CMNCTRL2
CWnd Kelas
Bagan Hierarki
CProgressCtrl Kelas