Bagikan melalui


CMFCListCtrl Kelas

Kelas CMFCListCtrl memperluas fungsionalitasCListCtrl kelas Kelas dengan mendukung fungsionalitas kontrol header tingkat lanjut kelasCMFCHeaderCtrl.

Sintaks

class CMFCListCtrl : public CListCtrl

Anggota

Metode Publik

Nama Deskripsi
CMFCListCtrl::EnableMarkSortedColumn Memungkinkan kemampuan untuk menandai kolom yang diurutkan dengan warna latar belakang yang berbeda.
CMFCListCtrl::EnableMultipleSort Mengaktifkan beberapa mode pengurutan.
CMFCListCtrl::GetHeaderCtrl Mengembalikan referensi ke kontrol header bergaris bawah.
CMFCListCtrl::IsMultipleSort Memeriksa apakah kontrol daftar berada dalam beberapa mode pengurutan.
CMFCListCtrl::OnCompareItems Dipanggil oleh kerangka kerja ketika harus membandingkan dua item kontrol daftar.
CMFCListCtrl::OnGetCellBkColor Dipanggil oleh kerangka kerja ketika harus menentukan warna latar belakang sel individual.
CMFCListCtrl::OnGetCellFont Dipanggil oleh kerangka kerja ketika harus mendapatkan font untuk sel yang sedang digambar.
CMFCListCtrl::OnGetCellTextColor Dipanggil oleh kerangka kerja ketika harus menentukan warna teks sel individual.
CMFCListCtrl::RemoveSortColumn Menghapus kolom pengurutan dari daftar kolom yang diurutkan.
CMFCListCtrl::SetSortColumn Mengatur kolom yang diurutkan saat ini dan urutan pengurutan.
CMFCListCtrl::Sort Mengurutkan kontrol daftar.

Keterangan

CMFCListCtrl menawarkan dua peningkatan ke CListCtrl kelas Kelas . Pertama, ini menunjukkan bahwa pengurutan kolom adalah opsi yang tersedia dengan secara otomatis menggambar panah pengurutan pada header. Kedua, mendukung pengurutan data pada beberapa kolom secara bersamaan.

Contoh

Contoh berikut menunjukkan cara menggunakan berbagai metode di CMFCListCtrl kelas . Contoh memperlihatkan cara membuat kontrol daftar, menyisipkan kolom, menyisipkan item, mengatur teks item, dan mengatur font kontrol daftar. Cuplikan kode ini adalah bagian dari sampel Demo Visual Studio.

CMFCListCtrl m_wndWatch;
// DWORD dwStyle
// CRect rectDummy
m_wndWatch.Create(dwStyle, rectDummy, this, ID_LIST_1);
m_wndWatch.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
m_wndWatch.InsertColumn(0, _T("Variable"), LVCFMT_LEFT, 100);
m_wndWatch.InsertColumn(1, _T("Value"), LVCFMT_LEFT, 100);

m_wndWatch.InsertItem(0, _T("m_nCount"));
m_wndWatch.SetItemText(0, 1, _T("100"));

m_wndWatch.SetFont(&m_Font);

Hierarki Warisan

CObject

CCmdTarget

CWnd

CListCtrl

CMFCListCtrl

Persyaratan

Header: afxlistctrl.h

CMFCListCtrl::EnableMarkSortedColumn

Menandai kolom yang diurutkan dengan warna latar belakang yang berbeda.

void EnableMarkSortedColumn(
    BOOL bMark = TRUE,
    BOOL bRedraw = TRUE);

Parameter

bMark
[di] Parameter Boolean yang menentukan apakah akan mengaktifkan warna latar belakang yang berbeda.

bRedraw
[di] Parameter Boolean yang menentukan apakah akan segera menggambar ulang kontrol.

Keterangan

EnableMarkSortedColumn menggunakan metode CDrawingManager::PixelAlpha untuk menghitung warna apa yang akan digunakan untuk kolom yang diurutkan. Warna yang dipilih didasarkan pada warna latar belakang reguler.

CMFCListCtrl::EnableMultipleSort

Memungkinkan pengurutan baris data dalam kontrol daftar menurut beberapa kolom.

void EnableMultipleSort(BOOL bEnable = TRUE);

Parameter

bEnable
[di] Boolean yang menentukan apakah akan mengaktifkan beberapa mode pengurutan kolom.

Keterangan

Saat Anda mengaktifkan pengurutan berdasarkan beberapa kolom, kolom memiliki hierarki. Baris data pertama-tama akan diurutkan menurut kolom utama. Setiap nilai yang setara kemudian diurutkan berdasarkan setiap kolom berikutnya berdasarkan prioritas.

CMFCListCtrl::GetHeaderCtrl

Mengembalikan referensi ke kontrol header.

virtual CMFCHeaderCtrl& GetHeaderCtrl();

Tampilkan Nilai

Referensi ke objek yang mendasar CMFCHeaderCtrl .

Keterangan

Kontrol header untuk kontrol daftar adalah jendela yang berisi judul untuk kolom. Biasanya diposisikan tepat di atas kolom.

CMFCListCtrl::IsMultipleSort

Memeriksa apakah kontrol daftar saat ini mendukung pengurutan pada beberapa kolom.

BOOL IsMultipleSort() const;

Tampilkan Nilai

TRUE jika kontrol daftar mendukung beberapa pengurutan; FALSE Sebaliknya.

Keterangan

CMFCListCtrl Saat Kelas mendukung beberapa pengurutan, pengguna dapat mengurutkan data dalam kontrol daftar menurut beberapa kolom. Untuk mengaktifkan beberapa pengurutan, panggil CMFCListCtrl::EnableMultipleSort.

CMFCListCtrl::OnCompareItems

Kerangka kerja memanggil metode ini ketika membandingkan dua item.

virtual int OnCompareItems(
    LPARAM lParam1,
    LPARAM lParam2,
    int iColumn);

Parameter

lParam1
[di] Item pertama yang akan dibandingkan.

lParam2
[di] Item kedua yang akan dibandingkan.

iColumn
[di] Indeks kolom yang diurutkan metode ini.

Tampilkan Nilai

Bilangan bulat yang menunjukkan posisi relatif dari dua item. Nilai negatif menunjukkan item pertama harus mendahului yang kedua, nilai positif menunjukkan item pertama harus mengikuti item kedua, dan nol berarti dua item tersebut setara.

Keterangan

Implementasi default selalu mengembalikan 0. Ambil alih fungsi ini untuk menyediakan algoritma pengurutan Anda sendiri.

CMFCListCtrl::OnGetCellBkColor

Kerangka kerja memanggil metode ini ketika harus menentukan warna latar belakang sel individual.

virtual COLORREF OnGetCellBkColor(
    int nRow,
    int nColumn);

Parameter

nRow
[di] Baris sel yang dimaksud.

nColumn
[di] Kolom sel yang dimaksud.

Tampilkan Nilai

Nilai COLOREF yang menentukan warna latar belakang sel.

Keterangan

Implementasi OnGetCellBkColor default tidak menggunakan parameter input yang disediakan dan hanya memanggil GetBkColor. Oleh karena itu, secara default, seluruh kontrol daftar akan memiliki warna latar belakang yang sama. Anda dapat mengambil OnGetCellBkColor alih di kelas turunan untuk menandai sel individual dengan warna latar belakang terpisah.

CMFCListCtrl::OnGetCellFont

Kerangka kerja memanggil metode ini ketika mendapatkan font untuk sel individual.

virtual HFONT OnGetCellFont(
    int nRow,
    int nColumn,
    DWORD dwData = 0);

Parameter

nRow
[di] Baris sel yang dimaksud.

nColumn
[di] Kolom sel yang dimaksud.

dwData
[di] Data yang ditentukan pengguna. Implementasi default tidak menggunakan parameter ini.

Tampilkan Nilai

Handel ke font yang digunakan untuk sel saat ini.

Keterangan

Secara default, metode ini mengembalikan NULL. Semua sel dalam kontrol daftar memiliki font yang sama. Ambil alih metode ini untuk menyediakan font yang berbeda untuk sel yang berbeda.

CMFCListCtrl::OnGetCellTextColor

Kerangka kerja memanggil metode ini ketika harus menentukan warna teks sel individual.

virtual COLORREF OnGetCellTextColor(
    int nRow,
    int nColumn);

Parameter

nRow
[di] Baris sel yang dimaksud.

nColumn
[di] Kolom sel yang dimaksud.

Tampilkan Nilai

Nilai COLOREF yang menentukan warna teks sel.

Keterangan

Secara default, metode ini memanggil GetTextColor terlepas dari parameter input. Seluruh kontrol daftar akan memiliki warna teks yang sama. Anda dapat mengambil OnGetCellTextColor alih kelas turunan untuk menandai sel individual dengan warna teks terpisah.

CMFCListCtrl::RemoveSortColumn

Menghapus kolom pengurutan dari daftar kolom yang diurutkan.

void RemoveSortColumn(int iColumn);

Parameter

iColumn
[di] Kolom yang akan dihapus.

Keterangan

Metode ini menghapus kolom pengurutan dari kontrol header. Ini memanggil CMFCHeaderCtrl::RemoveSortColumn.

CMFCListCtrl::SetSortColumn

Mengatur kolom yang diurutkan saat ini dan urutan pengurutan.

void SetSortColumn(
    int iColumn,
    BOOL bAscending = TRUE,
    BOOL bAdd = FALSE);

Parameter

iColumn
[di] Kolom yang akan diurutkan.

bAscending
[di] Boolean yang menentukan urutan pengurutan.

bAdd
[di] Boolean yang menentukan apakah metode menambahkan kolom yang ditunjukkan oleh iColumn ke daftar kolom pengurutan.

Keterangan

Metode ini meneruskan parameter input ke kontrol header dengan menggunakan metode CMFCHeaderCtrl::SetSortColumn.

CMFCListCtrl::Sort

Mengurutkan kontrol daftar.

virtual void Sort(
    int iColumn,
    BOOL bAscending = TRUE,
    BOOL bAdd = FALSE);

Parameter

iColumn
[di] Kolom yang akan diurutkan.

bAscending
[di] Boolean yang menentukan urutan pengurutan.

bAdd
[di] Boolean yang menentukan apakah metode ini menambahkan kolom yang ditunjukkan oleh iColumn ke daftar kolom pengurutan.

Lihat juga

Bagan Hierarki
Kelas
CListCtrl Kelas