CTreeCtrl
Kelas
Menyediakan fungsionalitas kontrol tampilan pohon umum Windows.
Sintaks
class CTreeCtrl : public CWnd
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CTreeCtrl::CTreeCtrl |
Membuat CTreeCtrl objek. |
Metode Publik
Nama | Deskripsi |
---|---|
CTreeCtrl::Create |
Membuat kontrol tampilan pohon dan melampirkannya ke CTreeCtrl objek. |
CTreeCtrl::CreateDragImage |
Membuat bitmap seret untuk item tampilan pohon yang ditentukan. |
CTreeCtrl::CreateEx |
Membuat kontrol pohon dengan gaya perluasan Windows yang ditentukan dan melampirkannya ke CTreeCtrl objek. |
CTreeCtrl::DeleteAllItems |
Menghapus semua item dalam kontrol tampilan pohon. |
CTreeCtrl::DeleteItem |
Menghapus item baru dalam kontrol tampilan pohon. |
CTreeCtrl::EditLabel |
Mengedit item tampilan pohon tertentu di tempat. |
CTreeCtrl::EndEditLabelNow |
Membatalkan operasi edit pada label item tampilan pohon di kontrol tampilan pohon saat ini. |
CTreeCtrl::EnsureVisible |
Memastikan bahwa item tampilan pohon terlihat dalam kontrol tampilan pohonnya. |
CTreeCtrl::Expand |
Memperluas, atau menciutkan, item turunan dari item tampilan pohon yang ditentukan. |
CTreeCtrl::GetBkColor |
Mengambil warna latar belakang kontrol saat ini. |
CTreeCtrl::GetCheck |
Mengambil status pemeriksaan item kontrol pohon. |
CTreeCtrl::GetChildItem |
Mengambil anak dari item tampilan pohon tertentu. |
CTreeCtrl::GetCount |
Mengambil jumlah item pohon yang terkait dengan kontrol tampilan pohon. |
CTreeCtrl::GetDropHilightItem |
Mengambil target operasi seret dan letakkan. |
CTreeCtrl::GetEditControl |
Mengambil handel kontrol edit yang digunakan untuk mengedit item tampilan pohon yang ditentukan. |
CTreeCtrl::GetExtendedStyle |
Mengambil gaya yang diperluas yang digunakan kontrol tampilan pohon saat ini. |
CTreeCtrl::GetFirstVisibleItem |
Mengambil item pertama yang terlihat dari item tampilan pohon yang ditentukan. |
CTreeCtrl::GetImageList |
Mengambil handel daftar gambar yang terkait dengan kontrol tampilan pohon. |
CTreeCtrl::GetIndent |
Mengambil offset (dalam piksel) item tampilan pohon dari induknya. |
CTreeCtrl::GetInsertMarkColor |
Mengambil warna yang digunakan untuk menggambar tanda penyisipan untuk tampilan pohon. |
CTreeCtrl::GetItem |
Mengambil atribut item tampilan pohon tertentu. |
CTreeCtrl::GetItemData |
Mengembalikan nilai khusus aplikasi yang terkait dengan item. |
CTreeCtrl::GetItemExpandedImageIndex |
Mengambil indeks gambar untuk ditampilkan ketika item yang ditentukan dari kontrol tampilan pohon saat ini berada dalam status diperluas. |
CTreeCtrl::GetItemHeight |
Mengambil tinggi item tampilan pohon saat ini. |
CTreeCtrl::GetItemImage |
Mengambil gambar yang terkait dengan item. |
CTreeCtrl::GetItemPartRect |
Mengambil persegi panjang pembatas untuk bagian tertentu dari item tertentu dalam kontrol tampilan pohon saat ini. |
CTreeCtrl::GetItemRect |
Mengambil persegi panjang pembatas item tampilan pohon. |
CTreeCtrl::GetItemState |
Mengembalikan status item. |
CTreeCtrl::GetItemStateEx |
Mengambil status diperluas dari item yang ditentukan dalam kontrol tampilan pohon saat ini. |
CTreeCtrl::GetItemText |
Mengembalikan teks item. |
CTreeCtrl::GetLastVisibleItem |
Mengambil item terakhir yang diperluas dalam kontrol tampilan pohon saat ini. |
CTreeCtrl::GetLineColor |
Mengambil warna garis saat ini untuk kontrol tampilan pohon. |
CTreeCtrl::GetNextItem |
Mengambil item tampilan pohon berikutnya yang cocok dengan hubungan tertentu. |
CTreeCtrl::GetNextSiblingItem |
Mengambil saudara kandung berikutnya dari item tampilan pohon yang ditentukan. |
CTreeCtrl::GetNextVisibleItem |
Mengambil item terlihat berikutnya dari item tampilan pohon yang ditentukan. |
CTreeCtrl::GetParentItem |
Mengambil induk item tampilan pohon yang ditentukan. |
CTreeCtrl::GetPrevSiblingItem |
Mengambil saudara kandung sebelumnya dari item tampilan pohon yang ditentukan. |
CTreeCtrl::GetPrevVisibleItem |
Mengambil item yang terlihat sebelumnya dari item tampilan pohon yang ditentukan. |
CTreeCtrl::GetRootItem |
Mengambil akar item tampilan pohon yang ditentukan. |
CTreeCtrl::GetScrollTime |
Mengambil waktu gulir maksimum untuk kontrol tampilan pohon. |
CTreeCtrl::GetSelectedCount |
Mengambil jumlah item terpilih dalam kontrol tampilan pohon saat ini. |
CTreeCtrl::GetSelectedItem |
Mengambil item tampilan pohon yang saat ini dipilih. |
CTreeCtrl::GetTextColor |
Mengambil warna teks kontrol saat ini. |
CTreeCtrl::GetToolTips |
Mengambil handel ke kontrol anak ToolTip yang digunakan oleh kontrol tampilan pohon. |
CTreeCtrl::GetVisibleCount |
Mengambil jumlah item pohon yang terlihat yang terkait dengan kontrol tampilan pohon. |
CTreeCtrl::HitTest |
Mengembalikan posisi kursor saat ini yang terkait dengan CTreeCtrl objek. |
CTreeCtrl::InsertItem |
Menyisipkan item baru dalam kontrol tampilan pohon. |
CTreeCtrl::ItemHasChildren |
Mengembalikan bukan nol jika item yang ditentukan memiliki item turunan. |
CTreeCtrl::MapAccIdToItem |
Memetakan pengidentifikasi aksesibilitas yang ditentukan ke handel ke item tampilan pohon di kontrol tampilan pohon saat ini. |
CTreeCtrl::MapItemToAccID |
Memetakan handel yang ditentukan ke item tampilan pohon di kontrol tampilan pohon saat ini ke pengidentifikasi aksesibilitas. |
CTreeCtrl::Select |
Memilih, menggulir ke tampilan, atau menggambar ulang item tampilan pohon tertentu. |
CTreeCtrl::SelectDropTarget |
Mengulangi item pohon sebagai target operasi seret dan letakkan. |
CTreeCtrl::SelectItem |
Memilih item tampilan pohon tertentu. |
CTreeCtrl::SelectSetFirstVisible |
Memilih item tampilan pohon tertentu sebagai item pertama yang terlihat. |
CTreeCtrl::SetAutoscrollInfo |
Mengatur laju autoscroll kontrol tampilan pohon saat ini. |
CTreeCtrl::SetBkColor |
Mengatur warna latar belakang kontrol. |
CTreeCtrl::SetCheck |
Mengatur status pemeriksaan item kontrol pohon. |
CTreeCtrl::SetExtendedStyle |
Mengatur gaya yang diperluas untuk kontrol tampilan pohon saat ini. |
CTreeCtrl::SetImageList |
Mengatur handel daftar gambar yang terkait dengan kontrol tampilan pohon. |
CTreeCtrl::SetIndent |
Mengatur offset (dalam piksel) item tampilan pohon dari induknya. |
CTreeCtrl::SetInsertMark |
Mengatur tanda penyisipan dalam kontrol tampilan pohon. |
CTreeCtrl::SetInsertMarkColor |
Mengatur warna yang digunakan untuk menggambar tanda penyisipan untuk tampilan pohon. |
CTreeCtrl::SetItem |
Mengatur atribut item tampilan pohon tertentu. |
CTreeCtrl::SetItemData |
Mengatur nilai khusus aplikasi yang terkait dengan item. |
CTreeCtrl::SetItemExpandedImageIndex |
Mengatur indeks gambar yang akan ditampilkan ketika item yang ditentukan dari kontrol tampilan pohon saat ini berada dalam status diperluas. |
CTreeCtrl::SetItemHeight |
Mengatur tinggi item tampilan pohon. |
CTreeCtrl::SetItemImage |
Mengaitkan gambar dengan item. |
CTreeCtrl::SetItemState |
Mengatur status item. |
CTreeCtrl::SetItemStateEx |
Mengatur status diperluas dari item yang ditentukan dalam kontrol tampilan pohon saat ini. |
CTreeCtrl::SetItemText |
Mengatur teks item. |
CTreeCtrl::SetLineColor |
Mengatur warna garis saat ini untuk kontrol tampilan pohon. |
CTreeCtrl::SetScrollTime |
Mengatur waktu gulir maksimum untuk kontrol tampilan pohon. |
CTreeCtrl::SetTextColor |
Mengatur warna teks kontrol. |
CTreeCtrl::SetToolTips |
Mengatur kontrol turunan ToolTip kontrol tampilan pohon. |
CTreeCtrl::ShowInfoTip |
Menampilkan infotip untuk item yang ditentukan dalam kontrol tampilan pohon saat ini. |
CTreeCtrl::SortChildren |
Mengurutkan turunan dari item induk yang diberikan. |
CTreeCtrl::SortChildrenCB |
Mengurutkan turunan dari item induk tertentu menggunakan fungsi pengurutan yang ditentukan aplikasi. |
Keterangan
"Kontrol tampilan pohon" adalah jendela yang menampilkan daftar item hierarkis, seperti judul dalam dokumen, entri dalam indeks, atau file dan direktori pada disk. Setiap item terdiri dari label dan gambar bitmapp opsional, dan setiap item dapat memiliki daftar subitem yang terkait dengannya. Dengan mengklik item, pengguna dapat memperluas dan menciutkan daftar subitem terkait.
Kontrol ini (dan oleh karena itu CTreeCtrl
kelas) hanya tersedia untuk program yang berjalan di bawah Windows 98 dan Windows NT versi 4 dan yang lebih baru.
Untuk informasi selengkapnya tentang menggunakan CTreeCtrl
, lihat:
Referensi Kontrol Tampilan Pohon di Windows SDK.
Hierarki Warisan
CTreeCtrl
Persyaratan
Header: afxcmn.h
CTreeCtrl::Create
Jika Anda menentukan kontrol pohon dalam templat kotak dialog, atau jika Anda menggunakan CTreeView
, kontrol pohon Anda dibuat secara otomatis saat kotak dialog atau tampilan dibuat.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parameter
dwStyle
Menentukan gaya kontrol tampilan pohon. Terapkan gaya jendela, yang dijelaskan dalam CreateWindow
, dan kombinasi gaya kontrol tampilan pohon seperti yang dijelaskan di Windows SDK.
rect
Menentukan ukuran dan posisi kontrol tampilan pohon. Ini bisa berupa CRect
objek atau RECT
struktur.
pParentWnd
Menentukan jendela induk kontrol tampilan pohon, biasanya .CDialog
Ini tidak boleh NULL
.
nID
Menentukan ID kontrol tampilan pohon.
Tampilkan Nilai
Bukan nol jika inisialisasi berhasil; jika tidak, 0.
Keterangan
Jika Anda ingin membuat kontrol pohon sebagai jendela anak dari beberapa jendela lain, gunakan Create
fungsi anggota. Jika Anda membuat kontrol pohon menggunakan Create
, Anda harus meneruskannya WS_VISIBLE
, selain gaya tampilan pohon lainnya.
Anda membangun CTreeCtrl
dalam dua langkah. Pertama panggil konstruktor, lalu panggil Create
, yang membuat kontrol tampilan pohon dan melampirkannya ke CTreeCtrl
objek.
Untuk membuat kontrol pohon dengan gaya jendela yang diperluas, panggil CreateEx
alih-alih Create
.
Contoh
// Assuming your window has a CTreeCtrl member named m_TreeCtrl,
// you can create the tree control window with a child ID of ID_MYTREE
// using a call like this:
m_TreeCtrl.Create(WS_VISIBLE | WS_TABSTOP | WS_CHILD | WS_BORDER |
TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES |
TVS_DISABLEDRAGDROP | TVS_NOTOOLTIPS | TVS_EDITLABELS,
CRect(10, 10, 300, 100), this, ID_MYTREE);
// The control will have the appropriate window styles, and the tree
// control styles specified are those most commonly used.
CTreeCtrl::CreateEx
Panggil fungsi ini untuk membuat kontrol (jendela anak) dan mengaitkannya dengan CTreeCtrl
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 tampilan pohon. Terapkan gaya jendela, yang dijelaskan dalam CreateWindow
, dan kombinasi gaya kontrol tampilan pohon seperti yang dijelaskan di Windows SDK.
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 .
CTreeCtrl::CreateDragImage
Panggil fungsi ini untuk membuat bitmap seret untuk item yang diberikan dalam kontrol tampilan pohon, buat daftar gambar untuk bitmap, dan tambahkan bitmap ke daftar gambar.
CImageList* CreateDragImage(HTREEITEM hItem);
Parameter
hItem
Handel item pohon yang akan diseret.
Tampilkan Nilai
Penunjuk ke daftar gambar tempat bitmap yang diseret ditambahkan, jika berhasil; jika tidak NULL
.
Keterangan
Aplikasi menggunakan fungsi daftar gambar untuk menampilkan gambar saat item sedang diseret.
Objek CImageList
bersifat permanen, dan Anda harus menghapusnya setelah selesai. Contohnya:
HTREEITEM hItem = m_TreeCtrl.GetSelectedItem();
CImageList *pImageList = m_TreeCtrl.CreateDragImage(hItem);
// Do something with the image list.
delete pImageList;
CTreeCtrl::CTreeCtrl
Membuat CTreeCtrl
objek.
CTreeCtrl();
CTreeCtrl::DeleteAllItems
Panggil fungsi ini untuk menghapus semua item dari kontrol tampilan pohon.
BOOL DeleteAllItems();
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
// The underlying Windows API always returns TRUE
VERIFY(m_TreeCtrl.DeleteAllItems());
CTreeCtrl::DeleteItem
Panggil fungsi ini untuk menghapus item dari kontrol tampilan pohon.
BOOL DeleteItem(HTREEITEM hItem);
Parameter
hItem
Handel item pohon yang akan dihapus. Jika hitem
memiliki TVI_ROOT
nilai , semua item dihapus dari kontrol tampilan pohon.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
// Look at all of the root-level items
HTREEITEM hCurrent = m_TreeCtrl.GetChildItem(TVI_ROOT);
while (hCurrent != NULL)
{
// Get the text for the item. Notice we use TVIF_TEXT because
// we want to retrieve only the text, but also specify TVIF_HANDLE
// because we're getting the item by its handle.
TVITEM item;
TCHAR szText[1024];
item.hItem = hCurrent;
item.mask = TVIF_TEXT | TVIF_HANDLE;
item.pszText = szText;
item.cchTextMax = 1024;
BOOL bWorked = m_TreeCtrl.GetItem(&item);
// Try to get the next item
hCurrent = m_TreeCtrl.GetNextItem(hCurrent, TVGN_NEXT);
// If we successfuly retrieved an item, and the item's text
// contains a lowercase letter 'e', delete the item.
if (bWorked && _tcschr(item.pszText, 'e'))
m_TreeCtrl.DeleteItem(item.hItem);
}
CTreeCtrl::EditLabel
Panggil fungsi ini untuk memulai pengeditan teks item yang ditentukan di tempat.
CEdit* EditLabel(HTREEITEM hItem);
Parameter
hItem
Handel item pohon yang akan diedit.
Tampilkan Nilai
Jika berhasil, penunjuk ke CEdit
objek yang digunakan untuk mengedit teks item; jika tidak NULL
.
Keterangan
Pengeditan dilakukan dengan mengganti teks item dengan kontrol edit baris tunggal yang berisi teks.
Contoh
// Make sure the focus is set to the tree control.
m_TreeCtrl.SetFocus();
// Show the edit control on the label of the selected item.
// The tree control must have the TVS_EDITLABELS style set.
HTREEITEM hSel = m_TreeCtrl.GetSelectedItem();
CEdit *pmyEdit = m_TreeCtrl.EditLabel(hSel);
ASSERT(pmyEdit != NULL);
CTreeCtrl::EndEditLabelNow
Menyimpulkan operasi edit pada label item tampilan pohon di kontrol tampilan pohon saat ini.
BOOL EndEditLabelNow(BOOL fCancelWithoutSave);
Parameter
fCancelWithoutSave
[di] TRUE
untuk membuang perubahan pada item tampilan pohon sebelum menyimpulkan operasi edit, atau FALSE
untuk menyimpan perubahan pada item tampilan pohon sebelum menyimpulkan operasi.
Tampilkan Nilai
TRUE
jika metode ini berhasil; jika tidak, FALSE
.
Keterangan
Metode ini mengirim TVM_ENDEDITLABELNOW
pesan, yang dijelaskan dalam Windows SDK.
CTreeCtrl::EnsureVisible
Panggil fungsi ini untuk memastikan bahwa item tampilan pohon terlihat.
BOOL EnsureVisible(HTREEITEM hItem);
Parameter
hItem
Handel item pohon yang sedang dibuat terlihat.
Tampilkan Nilai
Mengembalikan TRUE
jika sistem menggulir item dalam kontrol tampilan pohon untuk memastikan bahwa item yang ditentukan terlihat. Jika tidak, nilai yang dikembalikan adalah FALSE
.
Keterangan
Jika perlu, fungsi memperluas item induk atau menggulir kontrol tampilan pohon sehingga item terlihat.
Contoh
HTREEITEM hItem = m_TreeCtrl.GetSelectedItem();
// hmyItem is the item that I want to ensure is visible.
HTREEITEM hmyItem = m_TreeCtrl.GetChildItem(hItem);
// Expand the parent, if possible.
HTREEITEM hParent = m_TreeCtrl.GetParentItem(hmyItem);
if (hParent != NULL)
m_TreeCtrl.Expand(hParent, TVE_EXPAND);
// Ensure the item is visible.
m_TreeCtrl.EnsureVisible(hmyItem);
CTreeCtrl::Expand
Panggil fungsi ini untuk memperluas atau menciutkan daftar item anak, jika ada, yang terkait dengan item induk yang diberikan.
BOOL Expand(
HTREEITEM hItem,
UINT nCode);
Parameter
hItem
Handel item pohon yang sedang diperluas.
nCode
Bendera yang menunjukkan jenis tindakan yang akan diambil. Bendera ini dapat memiliki salah satu nilai berikut:
TVE_COLLAPSE
Menciutkan daftar.TVE_COLLAPSERESET
Menciutkan daftar dan menghapus item anak.TVIS_EXPANDEDONCE
Bendera status diatur ulang. Bendera ini harus digunakan denganTVE_COLLAPSE
bendera .TVE_EXPAND
Memperluas daftar.TVE_TOGGLE
Ciutkan daftar jika saat ini diperluas atau diperluas jika saat ini diciutkan.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
Lihat contoh untuk CTreeCtrl::EnsureVisible
.
CTreeCtrl::GetBkColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETBKCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF GetBkColor() const;
Tampilkan Nilai
COLORREF
Nilai yang mewakili warna latar belakang jendela saat ini untuk kontrol. Jika nilai ini adalah -1, kontrol menggunakan warna jendela sistem. Dalam hal ini, Anda dapat menggunakan ::GetSysColor(COLOR_WINDOW)
untuk mendapatkan warna sistem saat ini yang digunakan kontrol.
Contoh
Lihat contoh untuk CTreeCtrl::SetTextColor
.
CTreeCtrl::GetCheck
Panggil fungsi anggota ini untuk mengambil status pemeriksaan item.
BOOL GetCheck(HTREEITEM hItem) const;
Parameter
hItem
yang HTREEITEM
akan menerima informasi status.
Tampilkan Nilai
Bukan nol jika item kontrol pohon dicentang; jika tidak, 0.
Contoh
Lihat contoh untuk CTreeCtrl::SetCheck
.
CTreeCtrl::GetChildItem
Panggil fungsi ini untuk mengambil item tampilan pohon yang merupakan anak dari item yang ditentukan oleh hItem
.
HTREEITEM GetChildItem(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Handel item anak jika berhasil; jika tidak NULL
.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// Delete all of the children of hmyItem.
if (m_TreeCtrl.ItemHasChildren(hmyItem))
{
HTREEITEM hNextItem;
HTREEITEM hChildItem = m_TreeCtrl.GetChildItem(hmyItem);
while (hChildItem != NULL)
{
hNextItem = m_TreeCtrl.GetNextItem(hChildItem, TVGN_NEXT);
m_TreeCtrl.DeleteItem(hChildItem);
hChildItem = hNextItem;
}
}
CTreeCtrl::GetCount
Panggil fungsi ini untuk mengambil hitungan item dalam kontrol tampilan pohon.
UINT GetCount() const;
Tampilkan Nilai
Jumlah item dalam kontrol tampilan pohon.
Contoh
// Delete all of the items from the tree control.
m_TreeCtrl.DeleteAllItems();
ASSERT(m_TreeCtrl.GetCount() == 0);
CTreeCtrl::GetDropHilightItem
Panggil fungsi ini untuk mengambil item yang merupakan target operasi seret dan letakkan.
HTREEITEM GetDropHilightItem() const;
Tampilkan Nilai
Handel item dihilangkan jika berhasil; jika tidak NULL
.
Contoh
// Set the item at the point myPoint as the drop target.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SelectDropTarget(hItem);
ASSERT(m_TreeCtrl.GetDropHilightItem() == hItem);
}
CTreeCtrl::GetEditControl
Panggil fungsi ini untuk mengambil handel kontrol edit yang digunakan untuk mengedit teks item tampilan pohon.
CEdit* GetEditControl() const;
Tampilkan Nilai
Penunjuk ke kontrol edit yang digunakan untuk mengedit teks item, jika berhasil; jika tidak NULL
.
Contoh
// The string replacing the text in the edit control.
LPCTSTR lpszmyString = _T("New text!");
// Replace the text in the label edit control, if possible.
CEdit *pEdit = m_TreeCtrl.GetEditControl();
if (pEdit != NULL)
{
pEdit->SetWindowText(lpszmyString);
}
CTreeCtrl::GetExtendedStyle
Mengambil gaya yang diperluas yang digunakan kontrol tampilan pohon saat ini.
DWORD GetExtendedStyle() const;
Tampilkan Nilai
Nilai yang berisi kombinasi bitwise (OR) dari gaya yang diperluas kontrol tampilan pohon saat ini. Untuk informasi selengkapnya, lihat Gaya Yang Diperluas Kontrol Tampilan Pohon.
Keterangan
Metode ini mengirim TVM_GETEXTENDEDSTYLE
pesan, yang dijelaskan dalam Windows SDK.
CTreeCtrl::GetFirstVisibleItem
Panggil fungsi ini untuk mengambil item pertama yang terlihat dari kontrol tampilan pohon.
HTREEITEM GetFirstVisibleItem() const;
Tampilkan Nilai
Handel item pertama yang terlihat; jika tidak NULL
.
Contoh
Lihat contoh untuk CTreeCtrl::SetCheck
.
CTreeCtrl::GetImageList
Panggil fungsi ini untuk mengambil handel daftar gambar normal atau status yang terkait dengan kontrol tampilan pohon.
CImageList* GetImageList(UINT nImageList) const;
Parameter
nImageList
Jenis daftar gambar yang akan diambil. Daftar gambar bisa menjadi salah satu nilai berikut:
TVSIL_NORMAL
Mengambil daftar gambar normal, yang berisi gambar yang dipilih dan tidak dipilih untuk item tampilan pohon.TVSIL_STATE
Mengambil daftar gambar status, yang berisi gambar untuk item tampilan pohon yang dalam status ditentukan pengguna.
Tampilkan Nilai
Arahkan ke daftar gambar kontrol jika berhasil; jika tidak NULL
.
Keterangan
Setiap item dalam kontrol tampilan pohon dapat memiliki sepasang gambar bitmapped yang terkait dengannya. Satu gambar ditampilkan saat item dipilih, dan gambar lainnya ditampilkan saat item tidak dipilih. Misalnya, item mungkin menampilkan folder yang terbuka saat dipilih dan folder tertutup saat tidak dipilih.
Untuk informasi selengkapnya tentang daftar gambar, lihat CImageList
kelas .
Contoh
ASSERT(m_TreeCtrl.GetImageList(TVSIL_NORMAL) == NULL);
m_TreeCtrl.SetImageList(&m_TreeImages, TVSIL_NORMAL);
ASSERT(m_TreeCtrl.GetImageList(TVSIL_NORMAL) == &m_TreeImages);
CTreeCtrl::GetIndent
Panggil fungsi ini untuk mengambil jumlah, dalam piksel, item turunan tersebut diindentasi relatif terhadap item induknya.
UINT GetIndent() const;
Tampilkan Nilai
Jumlah indentasi yang diukur dalam piksel.
Contoh
// Double the indent.
UINT uIndent = m_TreeCtrl.GetIndent();
m_TreeCtrl.SetIndent(2 * uIndent);
CTreeCtrl::GetInsertMarkColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETINSERTMARKCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF GetInsertMarkColor() const;
Tampilkan Nilai
Nilai COLORREF
yang berisi warna tanda penyisipan saat ini.
Contoh
// Use the highliight color for the insert mark color.
COLORREF crColor = ::GetSysColor(COLOR_HIGHLIGHT);
m_TreeCtrl.SetInsertMarkColor(crColor);
ASSERT(m_TreeCtrl.GetInsertMarkColor() == crColor);
CTreeCtrl::GetItem
Panggil fungsi ini untuk mengambil atribut item tampilan pohon yang ditentukan.
BOOL GetItem(TVITEM* pItem) const;
Parameter
pItem
Penunjuk ke struktur, seperti yang TVITEM
dijelaskan dalam Windows SDK.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
Lihat contoh untuk CTreeCtrl::DeleteItem
.
CTreeCtrl::GetItemData
Panggil fungsi ini untuk mengambil nilai khusus aplikasi yang terkait dengan item yang ditentukan.
DWORD_PTR GetItemData(HTREEITEM hItem) const;
Parameter
hItem
Menangani item yang datanya akan diambil.
Tampilkan Nilai
Nilai khusus aplikasi berukuran pointer yang terkait dengan item yang ditentukan oleh hItem
.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// Delete all of the children of hmyItem whose item data is
// not equal to zero.
if (m_TreeCtrl.ItemHasChildren(hmyItem))
{
HTREEITEM hNextItem;
HTREEITEM hChildItem = m_TreeCtrl.GetChildItem(hmyItem);
while (hChildItem != NULL)
{
hNextItem = m_TreeCtrl.GetNextItem(hChildItem, TVGN_NEXT);
if (m_TreeCtrl.GetItemData(hChildItem) != 0)
{
m_TreeCtrl.DeleteItem(hChildItem);
}
hChildItem = hNextItem;
}
}
CTreeCtrl::GetItemExpandedImageIndex
Mengambil indeks gambar untuk ditampilkan ketika item yang ditentukan dari kontrol tampilan pohon saat ini berada dalam status diperluas.
int GetItemExpandedImageIndex(HTREEITEM hItem)const;
Parameter
hItem
[di] Menangani item kontrol tampilan pohon.
Tampilkan Nilai
Indeks gambar yang akan ditampilkan saat item yang ditentukan berada dalam status diperluas.
Keterangan
Metode ini mengirim TVM_GETITEM
pesan, yang dijelaskan dalam Windows SDK. Pesan tersebut TVITEMEX
mengembalikan struktur yang menjelaskan item kontrol tampilan pohon, lalu metode ini mengambil anggota dari struktur tersebut iExpandedImage
.
CTreeCtrl::GetItemHeight
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETITEMHEIGHT
Win32 , seperti yang dijelaskan dalam Windows SDK.
SHORT GetItemHeight() const;
Tampilkan Nilai
Tinggi item, dalam piksel.
Contoh
// Double the height of the items.
SHORT sHeight = m_TreeCtrl.GetItemHeight();
m_TreeCtrl.SetItemHeight(2 * sHeight);
CTreeCtrl::GetItemImage
Setiap item dalam kontrol tampilan pohon dapat memiliki sepasang gambar bitmapped yang terkait dengannya.
BOOL GetItemImage(
HTREEITEM hItem,
int& nImage,
int& nSelectedImage) const;
Parameter
hItem
Handel item yang gambarnya akan diambil.
nImage
Bilangan bulat yang menerima indeks gambar item dalam daftar gambar kontrol tampilan pohon.
nSelectedImage
Bilangan bulat yang menerima indeks gambar yang dipilih item dalam daftar gambar kontrol tampilan pohon.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Gambar muncul di sisi kiri label item. Satu gambar ditampilkan saat item dipilih, dan gambar lainnya ditampilkan saat item tidak dipilih. Misalnya, item mungkin menampilkan folder yang terbuka saat dipilih dan folder tertutup saat tidak dipilih.
Panggil fungsi ini untuk mengambil indeks gambar item dan gambar yang dipilih dalam daftar gambar kontrol tampilan pohon.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// If the selected image is the same as the nonselected image
// then make the selected image one more than the nonselected image.
if (m_TreeCtrl.ItemHasChildren(hmyItem))
{
HTREEITEM hItem = m_TreeCtrl.GetChildItem(hmyItem);
int nImage, nSelectedImage;
while (hItem != NULL)
{
m_TreeCtrl.GetItemImage(hItem, nImage, nSelectedImage);
if (nImage == nSelectedImage)
{
m_TreeCtrl.SetItemImage(hItem, nImage, nImage + 1);
}
hItem = m_TreeCtrl.GetNextSiblingItem(hItem);
}
}
CTreeCtrl::GetItemPartRect
Mengambil persegi panjang pembatas untuk bagian tertentu dari item tertentu dalam kontrol tampilan pohon saat ini.
BOOL GetItemPartRect(
HTREEITEM hItem,
int nPart,
LPRECT lpRect)const;
Parameter
hItem
[di] Menangani item kontrol tampilan pohon.
nPart
[di] Pengidentifikasi untuk bagian tersebut. Harus diatur ke TVGIPR_BUTTON
.
lpRect
[out] Penunjuk RECT
ke struktur. Jika metode ini berhasil, struktur menerima koordinat persegi panjang dari bagian yang ditentukan oleh hItem
dan nPart
.
Tampilkan Nilai
TRUE
jika metode ini berhasil; jika tidak, FALSE
.
Keterangan
Setiap item kontrol pohon dibatasi oleh persegi panjang grafis. Setiap kali titik dalam persegi panjang tersebut diklik, item dikatakan terpukul. Metode ini mengembalikan persegi panjang terbesar sehingga ketika titik dalam persegi diklik, item yang diidentifikasi oleh hItem
parameter terpukul.
Metode ini mengirim TVM_GETITEMPARTRECT
pesan, yang dijelaskan dalam Windows SDK. Untuk informasi selengkapnya, lihat TreeView_GetItemPartRect
makro.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya menggunakan pengidentifikasi aksesibilitas dan CTreeCtrl::MapAccIdToItem
metode untuk mengambil handel ke item tampilan pohon akar. Kemudian contoh menggunakan handel dan metode untuk menggambar persegi panjang 3D di sekitar item tersebut CTreeCtrl::GetItemPartRect
. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut. Kami menggunakan CTreeCtrl::MapItemToAccID
metode untuk mengaitkan item tampilan pohon akar dengan pengidentifikasi aksesibilitas.
CRect rect;
HTREEITEM hUS = m_treeCtrl.MapAccIdToItem(accIdUS);
m_treeCtrl.GetItemPartRect(hUS, TVGIPR_BUTTON, &rect);
m_treeCtrl.GetDC()->Draw3dRect(&rect, RGB(255, 0, 0), RGB(0, 0, 255));
CTreeCtrl::GetItemRect
Panggil fungsi ini untuk mengambil persegi panjang pembatas untuk hItem dan tentukan apakah itu terlihat atau tidak.
BOOL GetItemRect(
HTREEITEM hItem,
LPRECT lpRect,
BOOL bTextOnly) const;
Parameter
hItem
Handel item kontrol tampilan pohon.
lpRect
Penunjuk RECT
ke struktur yang menerima persegi panjang pembatas. Koordinat relatif terhadap sudut kiri atas kontrol tampilan pohon.
bTextOnly
Jika parameter ini bukan nol, persegi panjang pembatas hanya menyertakan teks item. Jika tidak, itu termasuk seluruh baris yang diduduki item dalam kontrol tampilan pohon.
Tampilkan Nilai
Bukan nol jika item terlihat, dengan persegi panjang pembatas yang terkandung dalam lpRect
. Jika tidak, 0 dengan lpRect
tidak diinisialisasi.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// Dump the bounds of hmyItem.
if (hmyItem != NULL)
{
RECT r;
m_TreeCtrl.GetItemRect(hmyItem, &r, FALSE);
TRACE(TEXT("left = %d, top = %d, right = %d, bottom = %d\r\n"),
r.left,
r.top,
r.right,
r.bottom);
}
CTreeCtrl::GetItemState
Mengembalikan status item yang ditentukan oleh hItem
.
UINT GetItemState(
HTREEITEM hItem,
UINT nStateMask) const;
Parameter
hItem
Handel item yang statusnya akan diambil.
nStateMask
Masker yang menunjukkan satu atau beberapa status yang akan diambil. Untuk informasi selengkapnya tentang kemungkinan nilai untuk nStateMask
, lihat diskusi state
dan stateMask
anggota TVITEM
struktur di Windows SDK.
Tampilkan Nilai
UINT
yang menyimpan operator C++ bitwise OR (|
) dari nilai yang ditentukan oleh nStateMask
. Untuk informasi tentang nilai yang mungkin, lihat CTreeCtrl::GetItem
. Untuk menemukan nilai untuk status tertentu, lakukan operator C++ bitwise AND (&
) f nilai status dan nilai pengembalian, seperti yang ditunjukkan dalam contoh berikut.
Contoh
// Show all of the visible items in bold.
HTREEITEM hItem = m_TreeCtrl.GetFirstVisibleItem();
while (hItem != NULL)
{
m_TreeCtrl.SetItemState(hItem, TVIS_BOLD, TVIS_BOLD);
ASSERT(TVIS_BOLD & m_TreeCtrl.GetItemState(hItem, TVIS_BOLD));
hItem = m_TreeCtrl.GetNextVisibleItem(hItem);
}
CTreeCtrl::GetItemStateEx
Mengambil status diperluas dari item yang ditentukan dalam kontrol tampilan pohon saat ini.
UINT GetItemStateEx(HTREEITEM hItem) const;
Parameter
hItem
[di] Menangani item kontrol tampilan pohon.
Tampilkan Nilai
Status item yang diperluas. Untuk informasi selengkapnya, lihat uStateEx
anggota TVITEMEX
struktur.
Keterangan
Metode ini mengirim TVM_GETITEM
pesan, yang dijelaskan dalam Windows SDK. Pesan tersebut TVITEMEX
mengembalikan struktur yang menjelaskan item kontrol tampilan pohon, dan metode ini mengambil anggota dari struktur tersebut uStateEx
.
CTreeCtrl::GetItemText
Mengembalikan teks item yang ditentukan oleh hItem
.
CString GetItemText(HTREEITEM hItem) const;
Parameter
hItem
Handel item yang teksnya akan diambil.
Tampilkan Nilai
Objek CString
yang berisi teks item.
Contoh
Lihat contoh untuk CTreeCtrl::GetNextItem
.
CTreeCtrl::GetLastVisibleItem
Mengambil item simpul terakhir yang tidak terlampaui dalam kontrol tampilan pohon saat ini.
HTREEITEM GetLastVisibleItem() const;
Tampilkan Nilai
Handel ke item node terakhir yang tidak terlampaui jika metode berhasil; jika tidak, NULL
.
Keterangan
Metode ini mengirim TVM_GETNEXTITEM
pesan, yang dijelaskan dalam Windows SDK. Untuk informasi selengkapnya, lihat TVGN_LASTVISIBLE
bendera dalam parameter pesan tersebut flag
.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Satu atau beberapa variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya mengambil handel ke item simpul tampilan pohon terakhir yang tidak diperluas, lalu menggambar persegi panjang 3D di sekitar item tersebut. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut.
CRect rect;
HTREEITEM hLast = m_treeCtrl.GetLastVisibleItem();
m_treeCtrl.GetItemPartRect(hLast, TVGIPR_BUTTON, &rect);
m_treeCtrl.GetDC()->Draw3dRect(&rect, RGB(255, 0, 0), RGB(0, 0, 255));
CTreeCtrl::GetLineColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETLINECOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF GetLineColor() const;
Tampilkan Nilai
Warna garis saat ini.
Contoh
COLORREF cr = m_TreeCtrl.GetLineColor();
CTreeCtrl::GetNextItem
Panggil fungsi ini untuk mengambil item tampilan pohon yang memiliki hubungan yang ditentukan, yang ditunjukkan nCode
oleh parameter, ke hItem
.
HTREEITEM GetNextItem(
HTREEITEM hItem,
UINT nCode) const;
Parameter
hItem
Menangani item pohon.
nCode
Bendera yang menunjukkan jenis hubungan dengan hItem
. Bendera ini bisa menjadi salah satu nilai berikut:
TVGN_CARET
Mengambil item terpilih saat ini.TVGN_CHILD
Mengambil item turunan pertama dari item yang ditentukan olehhItem
parameter .TVGN_DROPHILITE
Mengambil item yang merupakan target operasi seret dan letakkan.TVGN_FIRSTVISIBLE
Mengambil item pertama yang terlihat.TVGN_LASTVISIBLE
Mengambil item terakhir yang diperluas di pohon. Ini tidak mengambil item terakhir yang terlihat di jendela tampilan pohon.TVGN_NEXT
Mengambil item saudara berikutnya.TVGN_NEXTVISIBLE
Mengambil item terlihat berikutnya yang mengikuti item yang ditentukan.TVGN_PARENT
Mengambil induk item yang ditentukan.TVGN_PREVIOUS
Mengambil item saudara sebelumnya.TVGN_PREVIOUSVISIBLE
Mengambil item pertama yang terlihat yang mendahului item yang ditentukan.TVGN_ROOT
Mengambil item turunan pertama dari item akar tempat item yang ditentukan adalah bagian.
Tampilkan Nilai
Handel item berikutnya jika berhasil; jika tidak NULL
.
Keterangan
Fungsi ini akan kembali NULL
jika item yang diambil adalah simpul akar pohon. Misalnya, jika Anda menggunakan pesan ini dengan TVGN_PARENT
bendera pada anak tingkat pertama dari simpul akar tampilan pohon, pesan akan mengembalikan NULL
.
Contoh
Untuk contoh penggunaan GetNextItem
dalam perulangan, lihat CTreeCtrl::DeleteItem
.
// find the currently selected item
HTREEITEM hCurSel = m_TreeCtrl.GetNextItem(TVI_ROOT, TVGN_CARET);
// report it to the user
if (hCurSel == NULL)
{
AfxMessageBox(_T("There is no selected item"));
}
else
{
CString str;
str.Format(_T("The currently selected item is \"%s\""),
(LPCTSTR)m_TreeCtrl.GetItemText(hCurSel));
AfxMessageBox((LPCTSTR)str);
}
CTreeCtrl::GetNextSiblingItem
Panggil fungsi ini untuk mengambil saudara kandung berikutnya dari hItem
.
HTREEITEM GetNextSiblingItem(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Handel item saudara berikutnya; jika tidak NULL
.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// Show all of the children of hmyItem in bold.
if (m_TreeCtrl.ItemHasChildren(hmyItem))
{
HTREEITEM hItem = m_TreeCtrl.GetChildItem(hmyItem);
while (hItem != NULL)
{
m_TreeCtrl.SetItemState(hItem, TVIS_BOLD, TVIS_BOLD);
hItem = m_TreeCtrl.GetNextSiblingItem(hItem);
}
}
CTreeCtrl::GetNextVisibleItem
Panggil fungsi ini untuk mengambil item berikutnya yang terlihat dari hItem
.
HTREEITEM GetNextVisibleItem(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Handel item yang terlihat berikutnya; jika tidak NULL
.
Contoh
Lihat contoh untuk CTreeCtrl::SetCheck
.
CTreeCtrl::GetParentItem
Panggil fungsi ini untuk mengambil induk .hItem
HTREEITEM GetParentItem(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Handel item induk; jika tidak NULL
.
Keterangan
Fungsi ini akan kembali NULL
jika induk item yang ditentukan adalah simpul akar pohon.
Contoh
Lihat contoh untuk CTreeCtrl::EnsureVisible
.
CTreeCtrl::GetPrevSiblingItem
Panggil fungsi ini untuk mengambil saudara kandung sebelumnya dari hItem
.
HTREEITEM GetPrevSiblingItem(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Handel saudara kandung sebelumnya; jika tidak NULL
.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// Show all of the previous siblings of hmyItem in bold.
HTREEITEM hItem = hmyItem;
while (hItem != NULL)
{
m_TreeCtrl.SetItemState(hItem, TVIS_BOLD, TVIS_BOLD);
hItem = m_TreeCtrl.GetPrevSiblingItem(hItem);
}
CTreeCtrl::GetPrevVisibleItem
Panggil fungsi ini untuk mengambil item yang terlihat sebelumnya dari hItem
.
HTREEITEM GetPrevVisibleItem(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Handel item yang terlihat sebelumnya; jika tidak NULL
.
Contoh
HTREEITEM hmyItem = m_TreeCtrl.GetSelectedItem();
// Show all of the previous visible items of hmyItem in bold.
HTREEITEM hItem = hmyItem;
while (hItem != NULL)
{
m_TreeCtrl.SetItemState(hItem, TVIS_BOLD, TVIS_BOLD);
hItem = m_TreeCtrl.GetPrevVisibleItem(hItem);
}
CTreeCtrl::GetRootItem
Panggil fungsi ini untuk mengambil item akar kontrol tampilan pohon.
HTREEITEM GetRootItem() const;
Tampilkan Nilai
Handel item akar; jika tidak NULL
.
Contoh
Lihat contoh untuk CTreeCtrl::EditLabel
.
CTreeCtrl::GetScrollTime
Panggil fungsi anggota ini untuk mengambil waktu gulir maksimum untuk kontrol tampilan pohon.
UINT GetScrollTime() const;
Tampilkan Nilai
Waktu gulir maksimum, dalam milidetik.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETSCROLLTIME
Win32 , seperti yang dijelaskan dalam Windows SDK.
CTreeCtrl::GetSelectedCount
Mengambil jumlah item terpilih dalam kontrol tampilan pohon saat ini.
UINT GetSelectedCount();
Tampilkan Nilai
Jumlah item terpilih.
Keterangan
Metode ini mengirim TVM_GETSELECTEDCOUNT
pesan, yang dijelaskan dalam Windows SDK.
CTreeCtrl::GetSelectedItem
Panggil fungsi ini untuk mengambil item yang saat ini dipilih dari kontrol tampilan pohon.
HTREEITEM GetSelectedItem() const;
Tampilkan Nilai
Handel item terpilih; jika tidak NULL
.
Contoh
// Expand the selected item and make it visible, if possible.
HTREEITEM hItem = m_TreeCtrl.GetSelectedItem();
if ((hItem != NULL) && m_TreeCtrl.ItemHasChildren(hItem))
{
m_TreeCtrl.Expand(hItem, TVE_EXPAND);
m_TreeCtrl.EnsureVisible(hItem);
}
CTreeCtrl::GetTextColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETTEXTCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF GetTextColor() const;
Tampilkan Nilai
Nilai COLORREF
yang mewakili warna teks saat ini. Jika nilai ini adalah -1, kontrol menggunakan warna sistem untuk warna teks.
Contoh
Lihat contoh untuk CTreeCtrl::SetTextColor
.
CTreeCtrl::GetToolTips
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_GETTOOLTIPS
Win32 , seperti yang dijelaskan dalam Windows SDK.
CToolTipCtrl* GetToolTips() const;
Tampilkan Nilai
Penunjuk ke objek yang CToolTipCtrl
akan digunakan oleh kontrol pohon. Create
Jika fungsi anggota menggunakan gaya TVS_NOTOOLTIPS
, tidak ada tipsalat yang digunakan, dan NULL
dikembalikan.
Keterangan
Implementasi GetToolTips
MFC mengembalikan CToolTipCtrl
objek, yang digunakan oleh kontrol pohon, bukan handel ke kontrol tipsalat.
Contoh
// If the tree control does not have a tooltips control,
// then use m_ToolTips as the tooltips for the tree control.
if (m_TreeCtrl.GetToolTips() == NULL)
{
m_TreeCtrl.SetToolTips(&m_ToolTips);
}
CTreeCtrl::GetVisibleCount
Panggil fungsi ini untuk mengambil hitungan item yang terlihat dalam kontrol tampilan pohon.
UINT GetVisibleCount() const;
Tampilkan Nilai
Jumlah item yang terlihat dalam kontrol tampilan pohon; jika tidak - 1.
Contoh
Lihat contoh untuk CTreeCtrl::SetCheck
.
CTreeCtrl::HitTest
Panggil fungsi ini untuk menentukan lokasi titik yang ditentukan relatif terhadap area klien kontrol tampilan pohon.
HTREEITEM HitTest(
CPoint pt,
UINT* pFlags = NULL) const;
HTREEITEM HitTest(TVHITTESTINFO* pHitTestInfo) const;
Parameter
pt
Koordinat klien dari titik untuk diuji.
pFlags
Pointer ke bilangan bulat yang menerima informasi tentang hasil tes hit. Ini bisa menjadi satu atau beberapa nilai yang tercantum di bawah flags
anggota di bagian Komentar.
pHitTestInfo
TVHITTESTINFO
Alamat struktur yang berisi posisi untuk mencapai pengujian dan yang menerima informasi tentang hasil tes hit.
Tampilkan Nilai
Handel item tampilan pohon yang menempati titik yang ditentukan atau NULL
jika tidak ada item yang menempati titik tersebut.
Keterangan
Ketika fungsi ini dipanggil, pt
parameter menentukan koordinat titik untuk diuji. Fungsi mengembalikan handel item pada titik yang ditentukan atau NULL
jika tidak ada item yang menempati titik tersebut. Selain itu, pFlags
parameter berisi nilai yang menunjukkan lokasi titik yang ditentukan. Kemungkinan nilai adalah:
Nilai | Deskripsi |
---|---|
TVHT_ABOVE |
Di atas area klien. |
TVHT_BELOW |
Di bawah area klien. |
TVHT_NOWHERE |
Di area klien, tetapi di bawah item terakhir. |
TVHT_ONITEM |
Pada bitmap atau label yang terkait dengan item. |
TVHT_ONITEMBUTTON |
Pada tombol yang terkait dengan item. |
TVHT_ONITEMICON |
Pada bitmap yang terkait dengan item. |
TVHT_ONITEMINDENT |
Dalam indentasi yang terkait dengan item. |
TVHT_ONITEMLABEL |
Pada label (string) yang terkait dengan item. |
TVHT_ONITEMRIGHT |
Di area sebelah kanan item. |
TVHT_ONITEMSTATEICON |
Pada ikon status untuk item tampilan pohon yang berada dalam status yang ditentukan pengguna. |
TVHT_TOLEFT |
Di sebelah kiri area klien. |
TVHT_TORIGHT |
Di sebelah kanan area klien. |
Contoh
// Select the item that is at the point myPoint.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SelectItem(hItem);
}
CTreeCtrl::InsertItem
Panggil fungsi ini untuk menyisipkan item baru dalam kontrol tampilan pohon.
HTREEITEM InsertItem(LPTVINSERTSTRUCT lpInsertStruct);
HTREEITEM InsertItem(
UINT nMask,
LPCTSTR lpszItem,
int nImage,
int nSelectedImage,
UINT nState,
UINT nStateMask,
LPARAM lParam,
HTREEITEM hParent,
HTREEITEM hInsertAfter);
HTREEITEM InsertItem(
LPCTSTR lpszItem,
HTREEITEM hParent = TVI_ROOT,
HTREEITEM hInsertAfter = TVI_LAST);
HTREEITEM InsertItem(
LPCTSTR lpszItem,
int nImage,
int nSelectedImage,
HTREEITEM hParent = TVI_ROOT,
HTREEITEM hInsertAfter = TVI_LAST);
Parameter
lpInsertStruct
Penunjuk ke TVINSERTSTRUCT
yang menentukan atribut item tampilan pohon yang akan disisipkan.
nMask
Bilangan bulat yang menentukan atribut mana yang akan diatur. TVITEM
Lihat struktur di Windows SDK.
lpszItem
Alamat string yang berisi teks item.
nImage
Indeks gambar item dalam daftar gambar kontrol tampilan pohon.
nSelectedImage
Indeks gambar yang dipilih item dalam daftar gambar kontrol tampilan pohon.
nState
Menentukan nilai untuk status item. Lihat Status Item Kontrol Tampilan Pohon di Windows SDK untuk daftar status yang sesuai.
nStateMask
Menentukan status mana yang akan diatur. TVITEM
Lihat struktur di Windows SDK.
lParam
Nilai khusus aplikasi berukuran pointer yang terkait dengan item.
hParent
Handel induk item yang disisipkan.
hInsertAfter
Gagang item setelah item baru akan disisipkan.
Tampilkan Nilai
Menangani item baru jika berhasil; jika tidak NULL
.
Keterangan
Contoh menunjukkan situasi di mana Anda mungkin ingin menggunakan setiap versi fungsi saat menyisipkan item kontrol pohon.
Contoh
// Insert a root item using the structure. We must
// initialize a TVINSERTSTRUCT structure and pass its
// address to the call.
TVINSERTSTRUCT tvInsert;
tvInsert.hParent = NULL;
tvInsert.hInsertAfter = NULL;
tvInsert.item.mask = TVIF_TEXT;
tvInsert.item.pszText = _T("United States");
HTREEITEM hCountry = m_TreeCtrl.InsertItem(&tvInsert);
// Insert subitems of that root. Pennsylvania is
// a state in the United States, so its item will be a child
// of the United States item. We won't set any image or states,
// so we supply only the TVIF_TEXT mask flag. This
// override provides nearly complete control over the
// insertion operation without the tedium of initializing
// a structure. If you're going to add lots of items
// to a tree, you might prefer the structure override
// as it affords you a performance win by allowing you
// to initialize some fields of the structure only once,
// outside of your insertion loop.
HTREEITEM hPA = m_TreeCtrl.InsertItem(TVIF_TEXT,
_T("Pennsylvania"), 0, 0, 0, 0, 0, hCountry, NULL);
// Insert the "Washington" item and assure that it is
// inserted after the "Pennsylvania" item. This override is
// more appropriate for conveniently inserting items with
// images.
HTREEITEM hWA = m_TreeCtrl.InsertItem(_T("Washington"),
0, 0, hCountry, hPA);
// We'll add some cities under each of the states.
// The override used here is most appropriate
// for inserting text-only items.
m_TreeCtrl.InsertItem(_T("Pittsburgh"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Harrisburg"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Altoona"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Seattle"), hWA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Kalaloch"), hWA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Yakima"), hWA, TVI_SORT);
CTreeCtrl::ItemHasChildren
Gunakan fungsi ini untuk menentukan apakah item pohon yang ditentukan oleh hItem
memiliki item turunan.
BOOL ItemHasChildren(HTREEITEM hItem) const;
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Bukan nol jika item pohon yang ditentukan oleh hItem
memiliki item anak; 0 jika tidak.
Keterangan
Jika demikian, Anda kemudian dapat menggunakan CTreeCtrl::GetChildItem
untuk mengambil item anak tersebut.
Contoh
Lihat contoh untuk CTreeCtrl::GetSelectedItem
.
CTreeCtrl::MapAccIdToItem
Memetakan pengidentifikasi aksesibilitas yang ditentukan ke handel item tampilan pohon di kontrol tampilan pohon saat ini.
HTREEITEM MapAccIdToItem(UINT uAccId) const;
Parameter
uAccId
[di] Pengidentifikasi aksesibilitas untuk elemen dalam item tampilan pohon.
Tampilkan Nilai
Handel ke item tampilan pohon (HTREEITEM
) yang sesuai dengan uAccId
parameter. Untuk informasi selengkapnya, lihat hItem
anggota TVITEMEX
struktur.
Keterangan
Bantuan aksesibilitas adalah aplikasi yang membantu penyandang disabilitas menggunakan komputer. Pengidentifikasi aksesibilitas digunakan oleh IAccessible
antarmuka untuk menentukan elemen secara unik di jendela. Untuk informasi selengkapnya tentang IAccessible
API, lihat Aksesibilitas Aktif Microsoft.
Metode ini mengirim TVM_MAPACCIDTOHTREEITEM
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya menggunakan pengidentifikasi aksesibilitas dan CTreeCtrl::MapAccIdToItem
metode untuk mengambil handel ke item tampilan pohon akar. Contohnya menggunakan handel dan metode untuk menggambar persegi panjang 3D di sekitar item tersebut CTreeCtrl::GetItemPartRect
. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut. Kami menggunakan CTreeCtrl::MapItemToAccID
metode untuk mengaitkan item tampilan pohon akar dengan pengidentifikasi aksesibilitas.
CRect rect;
HTREEITEM hUS = m_treeCtrl.MapAccIdToItem(accIdUS);
m_treeCtrl.GetItemPartRect(hUS, TVGIPR_BUTTON, &rect);
m_treeCtrl.GetDC()->Draw3dRect(&rect, RGB(255, 0, 0), RGB(0, 0, 255));
CTreeCtrl::MapItemToAccID
Memetakan handel item tampilan pohon yang ditentukan dalam kontrol tampilan pohon saat ini ke pengidentifikasi aksesibilitas.
UINT MapItemToAccID(HTREEITEM hItem) const;
Parameter
hItem
[di] Handel item tampilan pohon dalam kontrol. Untuk informasi selengkapnya, lihat hItem
anggota TVITEMEX
struktur.
Tampilkan Nilai
Pengidentifikasi aksesibilitas yang sesuai dengan parameter hItem .
Keterangan
Bantuan aksesibilitas adalah aplikasi yang membantu penyandang disabilitas menggunakan komputer. Pengidentifikasi aksesibilitas digunakan oleh IAccessible
antarmuka untuk menentukan elemen secara unik di jendela. Untuk informasi selengkapnya tentang IAccessible
API, lihat Aksesibilitas Aktif Microsoft.
Metode ini mengirim TVM_MAPHTREEITEMTOACCID
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya mendapatkan nomor identifikasi untuk item kontrol tampilan pohon. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut. Contoh kode ini mendapatkan nomor identifikasi unik untuk node negara/wilayah akar.
// Map an accessibility identifier to the Pennsylvania node.
accIdUS = m_treeCtrl.MapItemToAccId(hCountry);
CTreeCtrl::Select
Panggil fungsi ini untuk memilih item tampilan pohon yang diberikan, menggulir item ke tampilan, atau menggambar ulang item dalam gaya yang digunakan untuk menunjukkan target operasi seret dan letakkan.
BOOL Select(
HTREEITEM hItem,
UINT nCode);
Parameter
hItem
Menangani item pohon.
nCode
Jenis tindakan yang harus diambil. Parameter ini bisa menjadi salah satu nilai berikut:
TVGN_CARET
Menyetel pilihan ke item yang diberikan.TVGN_DROPHILITE
Mengulangi item yang diberikan dalam gaya yang digunakan untuk menunjukkan target operasi seret dan letakkan.TVGN_FIRSTVISIBLE
Menggulir tampilan pohon secara vertikal sehingga item yang diberikan adalah item pertama yang terlihat.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Jika nCode
berisi nilai TVGN_CARET
, jendela induk menerima TVN_SELCHANGING
pesan pemberitahuan dan TVN_SELCHANGED
. Selain itu, jika item yang ditentukan adalah anak dari item induk yang diciutkan, daftar item turunan induk diperluas untuk mengungkapkan item yang ditentukan. Dalam hal ini, jendela induk menerima TVN_ITEMEXPANDING
pesan pemberitahuan dan TVN_ITEMEXPANDED
.
Contoh
Lihat contoh untuk CTreeCtrl::HitTest
.
CTreeCtrl::SelectDropTarget
Panggil fungsi ini untuk menggambar ulang item dalam gaya yang digunakan untuk menunjukkan target operasi seret dan letakkan.
BOOL SelectDropTarget(HTREEITEM hItem);
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
// Set the item at the point myPoint as the drop target.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SelectDropTarget(hItem);
ASSERT(m_TreeCtrl.GetDropHilightItem() == hItem);
}
CTreeCtrl::SelectItem
Panggil fungsi ini untuk memilih item tampilan pohon yang diberikan.
BOOL SelectItem(HTREEITEM hItem);
Parameter
hItem
Menangani item pohon.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Jika hItem
adalah NULL
, maka fungsi ini tidak memilih item.
Contoh
// Select the item that is at the point myPoint.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SelectItem(hItem);
}
CTreeCtrl::SelectSetFirstVisible
Panggil fungsi ini untuk menggulir tampilan pohon secara vertikal sehingga item yang diberikan adalah item pertama yang terlihat.
BOOL SelectSetFirstVisible(HTREEITEM hItem);
Parameter
hItem
Handel item pohon yang akan diatur sebagai item pertama yang terlihat.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Fungsi mengirim pesan ke jendela dengan TVM_SELECTITEM
parameter pesan dan TVGN_FIRSTVISIBLE
.
Contoh
// Select the item at the point myPoint as the first visible item.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SelectSetFirstVisible(hItem);
}
CTreeCtrl::SetAutoscrollInfo
Mengatur laju autoscroll kontrol tampilan pohon saat ini.
BOOL SetAutoscrollInfo(
UINT uPixelsPerSec,
UINT uUpdateTime);
Parameter
uPixelsPerSec
[di] Jumlah piksel per detik untuk digulir.
uUpdateTime
[di] Interval waktu antara pembaruan kontrol.
Tampilkan Nilai
Selalu mengembalikan TRUE
.
Keterangan
Parameter autoscroll digunakan untuk menggulir ke tampilan item yang saat ini tidak terlihat. Kontrol tampilan pohon harus memiliki TVS_EX_AUTOHSCROLL
gaya yang diperluas, yang dijelaskan dalam Gaya Yang Diperluas Kontrol Tampilan Pohon.
Metode ini mengirim TVM_SETAUTOSCROLLINFO
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya mengatur perilaku autoscroll dari kontrol tampilan pohon saat ini. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut. Kami sengaja membuat kontrol tampilan pohon sempit sehingga harus menggulir secara otomatis untuk menampilkan item pohon yang memiliki fokus. Contoh kode mengatur kontrol tampilan pohon untuk secara otomatis menggulir 30 piksel per detik setiap 5 detik hingga item pohon terlihat.
// Scroll 30 pixels/sec and redraw every 5 seconds.
m_treeCtrl.SetAutoscrollInfo(30, 5);
CTreeCtrl::SetBkColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETBKCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF SetBkColor(COLORREF clr);
Parameter
clr
Nilai COLORREF
yang berisi warna latar belakang baru. Jika nilai ini adalah -1, kontrol akan kembali menggunakan warna sistem untuk warna latar belakang.
Tampilkan Nilai
Nilai COLORREF
yang mewakili warna teks saat ini. Jika nilai ini adalah -1, kontrol menggunakan warna sistem untuk warna teks.
Contoh
Lihat contoh untuk CTreeCtrl::SetTextColor
.
CTreeCtrl::SetCheck
Panggil fungsi anggota ini untuk mengatur status pemeriksaan untuk item kontrol pohon.
BOOL SetCheck(
HTREEITEM hItem,
BOOL fCheck = TRUE);
Parameter
hItem
HTREEITEM
untuk menerima perubahan status pemeriksaan.
fCheck
Menunjukkan apakah item kontrol pohon akan dicentang atau tidak dicentang. Secara default, SetCheck
mengatur item yang akan dicentang.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Saat item kontrol pohon dicentang (fCheck
diatur ke TRUE
), item muncul dengan tanda centang yang berdekatan.
Contoh
UINT uCount = m_TreeCtrl.GetVisibleCount();
HTREEITEM hItem = m_TreeCtrl.GetFirstVisibleItem();
// Toggle the check state of all the visible items.
for (UINT i = 0; i < uCount; i++)
{
ASSERT(hItem != NULL);
m_TreeCtrl.SetCheck(hItem, !m_TreeCtrl.GetCheck(hItem));
hItem = m_TreeCtrl.GetNextVisibleItem(hItem);
}
Untuk menggunakan kotak centang, atur TVS_CHECKBOXES
sebelum mengisi kontrol pohon.
m_TreeCtrl.ModifyStyle(0, TVS_CHECKBOXES);
HTREEITEM aItem = m_TreeCtrl.InsertItem(_T("AAA"));
m_TreeCtrl.SetCheck(aItem);
CTreeCtrl::SetExtendedStyle
Mengatur gaya yang diperluas untuk kontrol tampilan pohon saat ini.
DWORD SetExtendedStyle(
DWORD dwExMask,
DWORD dwExStyles);
Parameter
dwExMask
[di] Bitmask yang menentukan gaya mana dalam kontrol tampilan pohon saat ini yang dipengaruhi oleh metode ini. Jika parameter ini nol, parameter diabaikan dan nilai dwExStyles
parameter ditetapkan ke kontrol tampilan pohon. Tentukan nol atau kombinasi bitwise (OR) gaya yang dijelaskan dalam Gaya Yang Diperluas Kontrol Tampilan Pohon.
dwExStyles
[di] Bitmask yang menentukan gaya mana dalam kontrol tampilan pohon saat ini untuk diatur atau dihapus. Untuk mengatur kombinasi gaya, tentukan kombinasi bitwise (OR) gaya yang dijelaskan dalam Gaya Yang Diperluas Kontrol Tampilan Pohon. Untuk menghapus sekumpulan gaya, tentukan nol.
Tampilkan Nilai
Nilai yang berisi gaya kontrol yang diperluas sebelumnya.
Keterangan
Metode ini menghapus gaya yang ditentukan dalam dwExMask
parameter, lalu mengatur gaya yang ditentukan dalam dwExStyles
parameter. Hanya gaya yang diperluas yang sesuai dengan bit yang dwExMask
berubah.
Metode ini mengirim TVM_SETEXTENDEDSTYLE
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya menambahkan gaya yang TVS_EX_AUTOHSCROLL
diperluas ke kontrol tampilan pohon saat ini. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut. Kami sengaja membuat kontrol tampilan pohon sempit sehingga harus menggulir secara otomatis untuk menampilkan item pohon yang memiliki fokus.
m_treeCtrl.SetExtendedStyle(TVS_EX_AUTOHSCROLL, TVS_EX_AUTOHSCROLL);
CTreeCtrl::SetImageList
Panggil fungsi ini untuk mengatur daftar gambar normal atau status untuk kontrol tampilan pohon dan menggambar ulang kontrol menggunakan gambar baru.
CImageList* SetImageList(
CImageList* pImageList,
int nImageListType);
Parameter
pImageList
Arahkan ke daftar gambar yang akan ditetapkan. Jika pImageList
adalah NULL
, semua gambar dihapus dari kontrol tampilan pohon.
nImageListType
Jenis daftar gambar yang akan diatur. Daftar gambar bisa menjadi salah satu nilai berikut:
TVSIL_NORMAL
Mengatur daftar gambar normal, yang berisi gambar yang dipilih dan tidak dipilih untuk item tampilan pohon. Anda harus menggunakan status ini untuk gambar overlay.TVSIL_STATE
Mengatur daftar gambar status, yang berisi gambar untuk item tampilan pohon yang dalam keadaan ditentukan pengguna.
Tampilkan Nilai
Penunjuk ke daftar gambar sebelumnya, jika ada; jika tidak NULL
.
Contoh
Lihat contoh untuk CTreeCtrl::GetImageList
.
CTreeCtrl::SetIndent
Panggil fungsi ini untuk mengatur lebar indentasi untuk kontrol tampilan pohon dan buat ulang kontrol untuk mencerminkan lebar baru.
void SetIndent(UINT nIndent);
Parameter
nIndent
Lebar, dalam piksel, dari indentasi. Jika nIndent
kurang dari lebar minimum yang ditentukan sistem, lebar baru diatur ke minimum yang ditentukan sistem.
Contoh
Lihat contoh untuk CTreeCtrl::GetIndent
.
CTreeCtrl::SetInsertMark
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETINSERTMARK
Win32 , seperti yang dijelaskan dalam Windows SDK.
BOOL SetInsertMark(
HTREEITEM hItem,
BOOL fAfter = TRUE);
Parameter
hItem
HTREEITEM
yang menentukan di mana item tanda penyisipan akan ditempatkan. Jika argumen ini NULL, tanda penyisipan akan dihapus.
fAfter
Nilai BOOL yang menentukan apakah tanda penyisipan ditempatkan sebelum atau sesudah item yang ditentukan. Jika argumen ini bukan nol, tanda penyisipan akan ditempatkan setelah item. Jika argumen ini nol, tanda penyisipan akan ditempatkan sebelum item.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
// Set the insert mark to be before the item at the point myPoint.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SetInsertMark(hItem, FALSE);
}
CTreeCtrl::SetInsertMarkColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETINSERTMARKCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF SetInsertMarkColor(COLORREF clrNew);
Parameter
clrNew
Nilai COLORREF
yang berisi warna tanda penyisipan baru.
Tampilkan Nilai
Nilai COLORREF
yang berisi warna tanda penyisipan sebelumnya.
Contoh
Lihat contoh untuk CTreeCtrl::GetInsertMarkColor
.
CTreeCtrl::SetItem
Panggil fungsi ini untuk mengatur atribut item tampilan pohon yang ditentukan.
BOOL SetItem(TVITEM* pItem);
BOOL SetItem(
HTREEITEM hItem,
UINT nMask,
LPCTSTR lpszItem,
int nImage,
int nSelectedImage,
UINT nState,
UINT nStateMask,
LPARAM lParam);
Parameter
pItem
Penunjuk ke TVITEM
struktur yang berisi atribut item baru, seperti yang dijelaskan di Windows SDK.
hItem
Handel item yang atributnya akan diatur. hItem
Lihat anggota TVITEM
struktur di Windows SDK.
nMask
Bilangan bulat yang menentukan atribut mana yang akan diatur. mask
Lihat anggota TVITEM
struktur.
lpszItem
Alamat string yang berisi teks item.
nImage
Indeks gambar item dalam daftar gambar kontrol tampilan pohon. iImage
Lihat anggota TVITEM
struktur.
nSelectedImage
Indeks gambar yang dipilih item dalam daftar gambar kontrol tampilan pohon. iSelectedImage
Lihat anggota TVITEM
struktur.
nState
Menentukan nilai untuk status item. State
Lihat anggota TVITEM
struktur.
nStateMask
Menentukan status mana yang akan diatur. stateMask
Lihat anggota TVITEM
struktur.
lParam
Nilai khusus aplikasi berukuran pointer yang terkait dengan item.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
TVITEM
Dalam struktur, hItem
anggota mengidentifikasi item, dan mask
anggota menentukan atribut mana yang akan diatur.
mask
Jika anggota atau nMask
parameter menentukan TVIF_TEXT
nilai, pszText
anggota atau lpszItem
adalah alamat string yang dihentikan null dan cchTextMax
anggota diabaikan. Jika mask
(atau nMask
) menentukan TVIF_STATE
nilai, stateMask
anggota atau nStateMask
parameter menentukan status item mana yang akan diubah dan state
anggota atau nState
parameter berisi nilai untuk status tersebut.
Contoh
// Show the item at the point myPoint in bold.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SetItem(hItem, TVIF_STATE, NULL, 0, 0, TVIS_BOLD,
TVIS_BOLD, 0);
}
CTreeCtrl::SetItemData
Panggil fungsi ini untuk mengatur nilai khusus aplikasi yang terkait dengan item yang ditentukan.
BOOL SetItemData(
HTREEITEM hItem,
DWORD_PTR dwData);
Parameter
hItem
Menangani item yang datanya akan diambil.
dwData
Nilai khusus aplikasi berukuran pointer yang terkait dengan item yang ditentukan oleh hItem
.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
CString str;
HTREEITEM hItem;
// Insert 20 items into the tree control making every item's
// data be the handle of the item.
for (int i = 0; i < 20; i++)
{
str.Format(TEXT("item %d"), i);
hItem = m_TreeCtrl.InsertItem(str);
if (hItem != NULL)
{
m_TreeCtrl.SetItemData(hItem, (DWORD_PTR)hItem);
}
}
CTreeCtrl::SetItemExpandedImageIndex
Mengatur indeks gambar yang akan ditampilkan ketika item yang ditentukan dari kontrol tampilan pohon saat ini berada dalam status diperluas.
BOOL SetItemExpandedImageIndex(
HTREEITEM hItem,
int iExpandedImage);
Parameter
hItem
[di] Menangani item kontrol tampilan pohon.
iExpandedImage
[di] Indeks gambar yang akan ditampilkan saat item yang ditentukan berada dalam status diperluas.
Tampilkan Nilai
TRUE
jika metode ini berhasil; jika tidak, FALSE
.
Keterangan
Metode ini mengirim TVM_SETITEM
pesan, yang dijelaskan dalam Windows SDK. Metode ini menetapkan iExpandedImage
parameter ke iExpandedImage
anggota TVITEMEX
struktur, lalu menggunakan struktur tersebut dalam pesan.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya adalah pengujian sepele untuk menentukan apakah CTreeCtrl::GetItemExpandedImageIndex
metode mengembalikan nilai yang CTreeCtrl::SetItemExpandedImageIndex
ditetapkan oleh metode . Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut.
CString str;
CString msg = _T("The set and retrieved item expanded image ")
_T("indexes are%s equal.");
int nSetItem = 0;
m_treeCtrl.SetItemExpandedImageIndex(hCountry, nSetItem);
int nItem = m_treeCtrl.GetItemExpandedImageIndex(hCountry);
if (nItem == nSetItem)
str.Format(msg, _T(""));
else
str.Format(msg, _T(" not"));
AfxMessageBox(str, MB_ICONINFORMATION);
CTreeCtrl::SetItemHeight
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETITEMHEIGHT
Win32 , seperti yang dijelaskan dalam Windows SDK.
SHORT SetItemHeight(SHORT cyHeight);
Parameter
cyHeight
Menentukan tinggi baru setiap item dalam tampilan pohon, dalam piksel. Jika argumen ini kurang dari tinggi gambar, maka akan diatur ke tinggi gambar. Jika argumen ini tidak genap, argumen akan dibulatkan ke bawah ke nilai genap terdekat. Jika argumen ini adalah -1, kontrol akan kembali menggunakan tinggi item defaultnya.
Tampilkan Nilai
Tinggi item sebelumnya, dalam piksel.
Contoh
Lihat contoh untuk CTreeCtrl::GetItemHeight
.
CTreeCtrl::SetItemImage
Mengaitkan gambar dengan item.
BOOL SetItemImage(
HTREEITEM hItem,
int nImage,
int nSelectedImage);
Parameter
hItem
Handel item yang gambarnya akan diatur.
nImage
Indeks gambar item dalam daftar gambar kontrol tampilan pohon.
nSelectedImage
Indeks gambar yang dipilih item dalam daftar gambar kontrol tampilan pohon.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Setiap item dalam kontrol tampilan pohon dapat memiliki sepasang gambar bitmapped yang terkait dengannya. Gambar muncul di sisi kiri label item. Satu gambar ditampilkan saat item dipilih, dan gambar lainnya ditampilkan saat item tidak dipilih. Misalnya, item mungkin menampilkan folder yang terbuka saat dipilih dan folder tertutup saat tidak dipilih.
Panggil fungsi ini untuk mengatur indeks gambar item dan gambar yang dipilih dalam daftar gambar kontrol tampilan pohon.
Untuk informasi selengkapnya tentang gambar, lihat CImageList
.
Contoh
Lihat contoh untuk CTreeCtrl::GetItemImage
.
CTreeCtrl::SetItemState
Mengatur status item yang ditentukan oleh hItem
.
BOOL SetItemState(
HTREEITEM hItem,
UINT nState,
UINT nStateMask);
Parameter
hItem
Handel item yang statusnya akan diatur.
nState
Menentukan status baru untuk item.
nStateMask
Menentukan status mana yang akan diubah.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Untuk informasi tentang status, lihat CTreeCtrl::GetItem
.
Contoh
Lihat contoh untuk CTreeCtrl::GetItemState
.
CTreeCtrl::SetItemStateEx
Mengatur status diperluas dari item yang ditentukan dalam kontrol tampilan pohon saat ini.
BOOL SetItemStateEx(
HTREEITEM hItem,
UINT uStateEx);
Parameter
hItem
[di] Menangani item kontrol tampilan pohon.
uStateEx
[di] Status item yang diperluas. Untuk informasi selengkapnya, lihat uStateEx
anggota TVITEMEX
struktur.
Tampilkan Nilai
TRUE
jika metode ini berhasil; jika tidak, FALSE
.
Keterangan
Metode ini mengirim TVM_SETITEM
pesan, yang dijelaskan dalam Windows SDK. Metode ini menetapkan uStateEx
parameter ke uStateEx
anggota TVITEMEX
struktur, lalu menggunakan struktur tersebut dalam pesan.
Contoh
Contoh kode pertama mendefinisikan variabel, m_treeCtrl
, yang digunakan untuk mengakses kontrol tampilan pohon saat ini. Contoh kode juga mendefinisikan bilangan bulat yang tidak ditandatangani dan beberapa HTREEITEM
variabel. Variabel ini digunakan dalam contoh berikutnya.
public:
// Variable to access tree control.
CTreeCtrl m_treeCtrl;
// Variable to access splitbutton control.
CSplitButton m_splitbutton;
// Accessibility identifier
UINT accIdUS;
// HTREEITEMs
HTREEITEM hCountry;
HTREEITEM hPA;
HTREEITEM hWA;
Contoh kode berikutnya mengatur item tampilan pohon ke status dinonaktifkan. Di bagian sebelumnya dari contoh kode, yang tidak ditampilkan, kami membuat tampilan pohon yang terdiri dari node negara/wilayah akar untuk Amerika Serikat, subnode untuk negara bagian Pennsylvania dan Washington, dan item pohon untuk kota-kota di negara bagian tersebut. Contoh kode ini mengatur simpul Pennsylvania ke status dinonaktifkan.
// Disable the Pennsylvania node.
m_treeCtrl.SetItemStateEx(hPA, TVIS_EX_DISABLED);
CTreeCtrl::SetItemText
Mengatur teks item yang ditentukan oleh hItem
.
BOOL SetItemText(
HTREEITEM hItem,
LPCTSTR lpszItem);
Parameter
hItem
Handel item yang teksnya akan diatur.
lpszItem
Alamat string yang berisi teks baru untuk item
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Contoh
// Clear the text of the item at point myPoint.
UINT uFlags;
HTREEITEM hItem = m_TreeCtrl.HitTest(myPoint, &uFlags);
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_TreeCtrl.SetItemText(hItem, NULL);
}
CTreeCtrl::SetLineColor
Panggil fungsi anggota ini untuk mengatur warna garis saat ini untuk kontrol tampilan pohon.
COLORREF SetLineColor(COLORREF clrNew = CLR_DEFAULT);
Parameter
clrNew
Warna garis baru.
Tampilkan Nilai
Warna garis sebelumnya.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETLINECOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
Contoh
COLORREF clrPrev = m_TreeCtrl.SetLineColor(RGB(255, 0, 0));
CTreeCtrl::SetScrollTime
Panggil fungsi anggota ini untuk mengatur waktu gulir maksimum untuk kontrol tampilan pohon.
UINT SetScrollTime(UINT uScrollTime);
Parameter
uScrollTime
Waktu gulir maksimum baru, dalam milidetik. Jika nilai ini kurang dari 100, nilai tersebut akan dibulatkan hingga 100.
Tampilkan Nilai
Waktu gulir maksimum sebelumnya, dalam milidetik.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETSCROLLTIME
Win32 , seperti yang dijelaskan dalam Windows SDK.
CTreeCtrl::SetTextColor
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETTEXTCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
COLORREF SetTextColor(COLORREF clr);
Parameter
clr
Nilai COLORREF
yang berisi warna teks baru. Jika argumen ini adalah -1, kontrol akan kembali menggunakan warna sistem untuk warna teks.
Tampilkan Nilai
COLORREF
Nilai yang mewakili warna teks sebelumnya. Jika nilai ini adalah -1, kontrol menggunakan warna sistem untuk warna teks.
Contoh
// change text color to white and background to dark blue
m_TreeCtrl.SetTextColor(RGB(255, 255, 255));
ASSERT(m_TreeCtrl.GetTextColor() == RGB(255, 255, 255));
m_TreeCtrl.SetBkColor(RGB(0, 0, 128));
ASSERT(m_TreeCtrl.GetBkColor() == RGB(0, 0, 128));
// force repaint immediately
m_TreeCtrl.Invalidate();
CTreeCtrl::SetToolTips
Fungsi anggota ini mengimplementasikan perilaku pesan TVM_SETTOOLTIPS
Win32 , seperti yang dijelaskan dalam Windows SDK.
CToolTipCtrl* SetToolTips(CToolTipCtrl* pWndTip);
Parameter
pWndTip
Penunjuk ke CToolTipCtrl
objek yang akan digunakan kontrol pohon.
Tampilkan Nilai
Penunjuk ke objek yang CToolTipCtrl
berisi tipsalat yang sebelumnya digunakan oleh kontrol, atau NULL
jika tidak ada tipsalat yang digunakan sebelumnya.
Keterangan
Untuk menggunakan tipsalat, tunjukkan TVS_NOTOOLTIPS
gaya saat Anda membuat CTreeCtrl
objek.
Contoh
Lihat contoh untuk CTreeCtrl::GetToolTips
.
CTreeCtrl::ShowInfoTip
Menampilkan infotip untuk item yang ditentukan dalam kontrol tampilan pohon saat ini.
void ShowInfoTip(HTREEITEM hItem);
Parameter
hItem
[di] Handel ke item tampilan pohon di kontrol. Untuk informasi selengkapnya, lihat hItem
anggota TVITEMEX
struktur.
Keterangan
Untuk informasi selengkapnya tentang perbedaan antara tipsalat dan tips info, lihat TipsAlat dan Infotip.
Metode ini mengirim TVM_SHOWINFOTIP
pesan, yang dijelaskan dalam Windows SDK.
CTreeCtrl::SortChildren
Panggil fungsi ini untuk mengurutkan item turunan dari item induk yang diberikan secara alfabet dalam kontrol tampilan pohon.
BOOL SortChildren(HTREEITEM hItem);
Parameter
hItem
Handel item induk yang item turunannya akan diurutkan. Jika hItem
adalah NULL
, pengurutan akan dilanjutkan dari akar pohon.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
SortChildren
tidak akan terulang kembali melalui pohon; hanya anak-anak langsung yang hItem
akan diurutkan.
Contoh
// Sort all of the items in the tree control.
m_TreeCtrl.SortChildren(TVI_ROOT);
CTreeCtrl::SortChildrenCB
Panggil fungsi ini untuk mengurutkan item tampilan pohon menggunakan fungsi panggilan balik yang ditentukan aplikasi yang membandingkan item.
BOOL SortChildrenCB(LPTVSORTCB pSort);
Parameter
pSort
Penunjuk TVSORTCB
ke struktur.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Fungsi perbandingan struktur, lpfnCompare
, harus mengembalikan nilai negatif jika item pertama harus mendahului yang kedua, nilai positif jika item pertama harus mengikuti item kedua, atau nol jika dua item tersebut setara.
Parameter lParam1
dan lParam2
sesuai dengan lParam
anggota TVITEM
struktur untuk dua item yang dibandingkan. Parameter lParamSort
sesuai dengan lParam
anggota TV_SORTCB
struktur.
Contoh
// Sort the item in reverse alphabetical order.
int CALLBACK MyCompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
// lParamSort contains a pointer to the tree control.
// The lParam of an item is just its handle,
// as specified with SetItemData
CTreeCtrl* pmyTreeCtrl = (CTreeCtrl*)lParamSort;
CString strItem1 = pmyTreeCtrl->GetItemText((HTREEITEM)lParam1);
CString strItem2 = pmyTreeCtrl->GetItemText((HTREEITEM)lParam2);
return strItem2.Compare(strItem1);
}
TVSORTCB tvs;
// Sort the tree control's items using my
// callback procedure.
tvs.hParent = TVI_ROOT;
tvs.lpfnCompare = MyCompareProc;
tvs.lParam = (LPARAM)&m_TreeCtrl;
m_TreeCtrl.SortChildrenCB(&tvs);
Lihat juga
Sampel MFC CMNCTRL1
CWnd
Kelas
Bagan Hierarki
CImageList
Kelas