Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
A Windows általános fanézet-vezérlő funkcióit biztosítja.
Szemantika
class CTreeCtrl : public CWnd
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
CTreeCtrl::CTreeCtrl |
Egy CTreeCtrl objektumot hoz létre. |
Nyilvános metódusok
| Név | Description |
|---|---|
CTreeCtrl::Create |
Létrehoz egy fanézet-vezérlőt, és csatolja egy CTreeCtrl objektumhoz. |
CTreeCtrl::CreateDragImage |
Létrehoz egy húzási bitképet a megadott fanézetelemhez. |
CTreeCtrl::CreateEx |
Létrehoz egy fa vezérlőelemet a megadott bővített Windows-stílusokkal, és csatolja azt egy CTreeCtrl objektumhoz. |
CTreeCtrl::DeleteAllItems |
Törli a fanézet vezérlőelem összes elemét. |
CTreeCtrl::DeleteItem |
Új elem törlése fanézet-vezérlőben. |
CTreeCtrl::EditLabel |
Helyben szerkeszt egy megadott fanézetelemet. |
CTreeCtrl::EndEditLabelNow |
Megszakítja a szerkesztési műveletet egy fanézetű elem címkéjén az aktuális fanézet vezérlőelemben. |
CTreeCtrl::EnsureVisible |
Biztosítja, hogy egy fanézetelem látható legyen a fanézet vezérlőjében. |
CTreeCtrl::Expand |
Kibontja vagy összecsukja a megadott fanézetelem gyermekelemeit. |
CTreeCtrl::GetBkColor |
Lekéri a vezérlőelem aktuális háttérszínét. |
CTreeCtrl::GetCheck |
Lekéri egy fa vezérlőelem ellenőrzési állapotát. |
CTreeCtrl::GetChildItem |
Lekéri egy megadott fanézetelem gyermekét. |
CTreeCtrl::GetCount |
Lekéri a fanézet vezérlőelemhez társított faelemek számát. |
CTreeCtrl::GetDropHilightItem |
Lekéri egy húzási művelet célját. |
CTreeCtrl::GetEditControl |
Lekéri a megadott fanézetelem szerkesztéséhez használt szerkesztési vezérlő leíróját. |
CTreeCtrl::GetExtendedStyle |
Lekéri az aktuális fanézet vezérlőelem által használt kiterjesztett stílusokat. |
CTreeCtrl::GetFirstVisibleItem |
Lekéri a megadott fanézetelem első látható elemét. |
CTreeCtrl::GetImageList |
Lekéri a fanézet vezérlőelemhez társított képlista leíróját. |
CTreeCtrl::GetIndent |
Lekéri egy fanézetelem eltolását (képpontban) a szülőtől. |
CTreeCtrl::GetInsertMarkColor |
Lekéri a fanézet beszúrási jelének rajzolásához használt színt. |
CTreeCtrl::GetItem |
Lekéri egy megadott fanézetelem attribútumait. |
CTreeCtrl::GetItemData |
Az elemhez társított alkalmazásspecifikus értéket adja vissza. |
CTreeCtrl::GetItemExpandedImageIndex |
Lekéri a kép indexét, hogy megjelenjen, ha az aktuális fanézet vezérlőelem megadott eleme kibontott állapotban van. |
CTreeCtrl::GetItemHeight |
Lekéri a fanézet elemeinek aktuális magasságát. |
CTreeCtrl::GetItemImage |
Lekéri az elemhez társított képeket. |
CTreeCtrl::GetItemPartRect |
Lekéri a határoló téglalapot egy adott elem adott részére az aktuális fanézet vezérlőelemben. |
CTreeCtrl::GetItemRect |
Egy fanézetelem határoló téglalapját kéri le. |
CTreeCtrl::GetItemState |
Egy elem állapotát adja vissza. |
CTreeCtrl::GetItemStateEx |
Lekéri a megadott elem kiterjesztett állapotát az aktuális fanézet vezérlőelemben. |
CTreeCtrl::GetItemText |
Egy elem szövegét adja vissza. |
CTreeCtrl::GetLastVisibleItem |
Lekéri az aktuális fanézet vezérlőelem utolsó kibontott elemét. |
CTreeCtrl::GetLineColor |
Lekéri a fanézet vezérlőelem aktuális vonalszínét. |
CTreeCtrl::GetNextItem |
Lekéri a következő fanézetelemet, amely megfelel egy adott kapcsolatnak. |
CTreeCtrl::GetNextSiblingItem |
Lekéri a megadott fanézetelem következő testvérét. |
CTreeCtrl::GetNextVisibleItem |
Lekéri a megadott fanézetelem következő látható elemét. |
CTreeCtrl::GetParentItem |
A megadott fanézetelem szülőjének lekérése. |
CTreeCtrl::GetPrevSiblingItem |
Lekéri a megadott fanézetelem előző testvérét. |
CTreeCtrl::GetPrevVisibleItem |
Lekéri a megadott fanézetelem előző látható elemét. |
CTreeCtrl::GetRootItem |
Lekéri a megadott fanézetelem gyökerét. |
CTreeCtrl::GetScrollTime |
Lekéri a fanézet vezérlőelem maximális görgetési idejét. |
CTreeCtrl::GetSelectedCount |
Lekéri az aktuális fanézet vezérlőelem kijelölt elemeinek számát. |
CTreeCtrl::GetSelectedItem |
Lekéri a jelenleg kijelölt fanézetelemet. |
CTreeCtrl::GetTextColor |
A vezérlőelem aktuális szövegszínét kéri le. |
CTreeCtrl::GetToolTips |
Lekéri a fogópontot a fanézet vezérlőelem által használt gyermek ToolTip vezérlőelemhez. |
CTreeCtrl::GetVisibleCount |
Lekéri a fanézet vezérlőelemhez társított látható faelemek számát. |
CTreeCtrl::HitTest |
Az objektumhoz kapcsolódó kurzor aktuális pozícióját CTreeCtrl adja vissza. |
CTreeCtrl::InsertItem |
Új elem beszúrása fanézet-vezérlőbe. |
CTreeCtrl::ItemHasChildren |
Nonzero értéket ad vissza, ha a megadott elem gyermekelemekkel rendelkezik. |
CTreeCtrl::MapAccIdToItem |
A megadott akadálymentességi azonosítót a fogóponthoz rendeli az aktuális fanézet vezérlőelem egyik fanézeti eleméhez. |
CTreeCtrl::MapItemToAccID |
A megadott fogópontot az aktuális fanézet vezérlőelem fanézeti eleméhez rendeli egy akadálymentességi azonosítóhoz. |
CTreeCtrl::Select |
Kiválaszt, görget a nézetbe, vagy újrarajzolva egy megadott fanézetelemet. |
CTreeCtrl::SelectDropTarget |
Átrajzozza a faelemet egy húzási művelet céljaként. |
CTreeCtrl::SelectItem |
Kiválaszt egy megadott fanézetelemet. |
CTreeCtrl::SelectSetFirstVisible |
Egy megadott fanézetelemet jelöl ki első látható elemként. |
CTreeCtrl::SetAutoscrollInfo |
Beállítja az aktuális fanézet vezérlő automatikus regisztrációjának sebességét. |
CTreeCtrl::SetBkColor |
Beállítja a vezérlő háttérszínét. |
CTreeCtrl::SetCheck |
Beállítja egy fa vezérlőelem ellenőrzési állapotát. |
CTreeCtrl::SetExtendedStyle |
Az aktuális fanézet vezérlőelem kiterjesztett stílusainak beállítása. |
CTreeCtrl::SetImageList |
Beállítja a fanézet vezérlőelemhez társított képlista fogópontját. |
CTreeCtrl::SetIndent |
Beállítja egy fanézetelem eltolását (képpontban) a szülőtől. |
CTreeCtrl::SetInsertMark |
Beállítja a beszúrási jelet egy fanézet vezérlőelemben. |
CTreeCtrl::SetInsertMarkColor |
Beállítja a fanézet beszúrási jelének rajzolásához használt színt. |
CTreeCtrl::SetItem |
Egy megadott fanézetelem attribútumait állítja be. |
CTreeCtrl::SetItemData |
Beállítja az elemhez társított alkalmazásspecifikus értéket. |
CTreeCtrl::SetItemExpandedImageIndex |
A kép indexét úgy állítja be, hogy megjelenjen, ha az aktuális fanézet vezérlőelem megadott eleme kibontott állapotban van. |
CTreeCtrl::SetItemHeight |
Beállítja a fanézet elemeinek magasságát. |
CTreeCtrl::SetItemImage |
Képek társítása elemhez. |
CTreeCtrl::SetItemState |
Egy elem állapotát állítja be. |
CTreeCtrl::SetItemStateEx |
A megadott elem kiterjesztett állapotát állítja be az aktuális fanézet vezérlőelemben. |
CTreeCtrl::SetItemText |
Egy elem szövegét állítja be. |
CTreeCtrl::SetLineColor |
Beállítja a fanézet vezérlőelem aktuális vonalszínét. |
CTreeCtrl::SetScrollTime |
Beállítja a fanézet vezérlőelem maximális görgetési idejét. |
CTreeCtrl::SetTextColor |
Beállítja a vezérlőelem szövegszínét. |
CTreeCtrl::SetToolTips |
Beállítja a fanézet vezérlőelem gyermekvezérlőjét ToolTip . |
CTreeCtrl::ShowInfoTip |
Megjeleníti a megadott elemhez tartozó információs tippet az aktuális fanézet vezérlőelemben. |
CTreeCtrl::SortChildren |
Egy adott szülőelem gyermekeinek rendezése. |
CTreeCtrl::SortChildrenCB |
Egy adott szülőelem gyermekeinek rendezése alkalmazás által definiált rendezési függvény használatával. |
Megjegyzések
A "fanézet vezérlőelem" egy olyan ablak, amely hierarchikus elemek listáját jeleníti meg, például a dokumentum címsorait, az index bejegyzéseit vagy a lemez fájljait és könyvtárait. Minden elem egy címkéből és egy választható bitleképből áll, és minden elemhez hozzárendelheti az alelemek listáját. Ha egy elemre kattint, a felhasználó kibonthatja és összecsukhatja a társított részhalmazok listáját.
Ez a vezérlő (és ezért az CTreeCtrl osztály) csak a Windows 98 és a Windows NT 4-es és újabb verziójában futó programok számára érhető el.
További információ a használatról CTreeCtrl:
Fanézet-vezérlési referencia a Windows SDK-ban.
Öröklési hierarchia
CTreeCtrl
Requirements
Fejléc:afxcmn.h
CTreeCtrl::Create
Ha egy párbeszédpanelsablonban adja meg a fa vezérlőelemet, vagy ha használja CTreeView, a rendszer automatikusan létrehozza a fa vezérlőelemet a párbeszédpanel vagy nézet létrehozásakor.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paraméterek
dwStyle
Megadja a fanézet vezérlőelem stílusát. Alkalmazza a Windows SDK-ban CreateWindowleírt ablakstílusokat és a fanézet-vezérlőstílusok bármilyen kombinációját.
rect
Megadja a fanézet vezérlőelem méretét és pozícióját.
CRect Lehet objektum vagy RECT struktúra.
pParentWnd
Megadja a fanézet vezérlőjének szülőablakát, általában a CDialog. Nem lehet NULL.
nID
Megadja a fanézet vezérlőelem azonosítóját.
Visszaadott érték
Nonzero, ha az inicializálás sikeres volt; egyéb esetben 0.
Megjegyzések
Ha egy másik ablak gyermekablakaként szeretné létrehozni a fa vezérlőelemet, használja a tagfüggvényt Create . Ha a fa vezérlőelemet más Createfanézeti stílusok mellett hozza létre, át kell adnia azt WS_VISIBLE.
Két lépésben hozhat létre egy CTreeCtrl elemet. Először hívja meg a konstruktort, majd hívja meg Create, amely létrehozza a fanézet vezérlőt, és csatolja az CTreeCtrl objektumhoz.
Ha kiterjesztett ablakstílusokat tartalmazó fa vezérlőelemet szeretne létrehozni, hívja meg ahelyettCreate, hogy a CreateEx .
Example
// 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
A függvény meghívásával hozzon létre egy vezérlőt (egy gyermekablakot), és társítsa azt az CTreeCtrl objektummal.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paraméterek
dwExStyle
A létrehozott vezérlőelem kiterjesztett stílusát adja meg. A bővített Windows-stílusok listáját a dwExStyle Windows SDK paraméterében CreateWindowEx találja.
dwStyle
Megadja a fanézet vezérlőelem stílusát. Alkalmazza a Windows SDK-ban CreateWindowleírt ablakstílusokat és a fanézet-vezérlőstílusok bármilyen kombinációját.
rect
Hivatkozás a RECT létrehozandó ablak méretét és pozícióját leíró struktúrára a következő ügyfélkoordinátáiban pParentWnd: .
pParentWnd
A vezérlő szülőablakára mutató mutató.
nID
A vezérlő gyermekablak-azonosítója.
Visszaadott érték
Nonzero, ha sikeres, egyébként 0.
Megjegyzések
Create A CreateEx bővített Windows-stílusok helyett használja a Windows bővített stílus előszavában WS_EX_megadott stílusokat.
CTreeCtrl::CreateDragImage
Hívja meg ezt a függvényt, hogy hozzon létre egy húzási bitképet az adott elemhez egy fanézet vezérlőelemben, hozzon létre egy képlistát a bitképhez, és adja hozzá a bitképet a képlistához.
CImageList* CreateDragImage(HTREEITEM hItem);
Paraméterek
hItem
A húzandó faelem kezelése.
Visszaadott érték
Mutasson arra a képlistára, amelyhez a húzás bitképe hozzáadva lett, ha sikeres; egyéb esetben NULL.
Megjegyzések
Az alkalmazások a képlista függvényekkel jelenítik meg a képet az elem húzásakor.
Az CImageList objektum végleges, és ha elkészült, törölnie kell. Például:
HTREEITEM hItem = m_TreeCtrl.GetSelectedItem();
CImageList *pImageList = m_TreeCtrl.CreateDragImage(hItem);
// Do something with the image list.
delete pImageList;
CTreeCtrl::CTreeCtrl
Egy CTreeCtrl objektumot hoz létre.
CTreeCtrl();
CTreeCtrl::DeleteAllItems
Hívja meg ezt a függvényt, hogy törölje az összes elemet a fanézet vezérlőelemből.
BOOL DeleteAllItems();
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
// The underlying Windows API always returns TRUE
VERIFY(m_TreeCtrl.DeleteAllItems());
CTreeCtrl::DeleteItem
Hívja meg ezt a függvényt, hogy töröljön egy elemet a fanézet vezérlőelemből.
BOOL DeleteItem(HTREEITEM hItem);
Paraméterek
hItem
A törölni kívánt faelem kezelése. Ha hitem rendelkezik az TVI_ROOT értékkel, a rendszer minden elemet töröl a fanézet vezérlőelemből.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
// 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
A függvény meghívásával megkezdheti a megadott elem szövegének helyben történő szerkesztését.
CEdit* EditLabel(HTREEITEM hItem);
Paraméterek
hItem
A szerkeszteni kívánt faelem kezelése.
Visszaadott érték
Ha sikeres, az elem szövegének szerkesztéséhez használt objektumra mutató mutató CEdit ; ellenkező esetben NULL.
Megjegyzések
A szerkesztés úgy történik, hogy az elem szövegét egy egysoros szerkesztési vezérlőre cseréli, amely tartalmazza a szöveget.
Example
// 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
Befejezi a szerkesztési műveletet egy fanézeti elem címkéjén az aktuális fanézet vezérlőelemben.
BOOL EndEditLabelNow(BOOL fCancelWithoutSave);
Paraméterek
fCancelWithoutSave
[in] TRUE a szerkesztési művelet befejezése előtt elvetheti a fanézeti elem módosításait, vagy FALSE mentheti a fanézeti elem módosításait a művelet befejezése előtt.
Visszaadott érték
TRUEha ez a módszer sikeres; egyéb esetben. FALSE
Megjegyzések
Ez a metódus elküldi a TVM_ENDEDITLABELNOW Windows SDK-ban leírt üzenetet.
CTreeCtrl::EnsureVisible
Hívja meg ezt a függvényt, és győződjön meg arról, hogy egy fanézetelem látható.
BOOL EnsureVisible(HTREEITEM hItem);
Paraméterek
hItem
A láthatóvá tett faelem kezelése.
Visszaadott érték
Visszaadja TRUE , ha a rendszer görgette a fanézet vezérlőelem elemeit, hogy a megadott elem látható legyen. Ellenkező esetben a visszatérési érték a következő FALSE: .
Megjegyzések
Szükség esetén a függvény kibontja a szülőelemet, vagy görgeti a fanézet vezérlőt, hogy az elem látható legyen.
Example
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
A függvény meghívásával kibonthatja vagy összecsukhatja az adott szülőelemhez társított gyermekelemek listáját, ha vannak ilyenek.
BOOL Expand(
HTREEITEM hItem,
UINT nCode);
Paraméterek
hItem
A kibontott faelem kezelése.
nCode
A végrehajtandó művelet típusát jelző jelző. Ez a jelző az alábbi értékek egyikével rendelkezhet:
TVE_COLLAPSEÖsszecsukja a listát.TVE_COLLAPSERESETÖsszecsukja a listát, és eltávolítja a gyermekelemeket. AzTVIS_EXPANDEDONCEállapotjelző alaphelyzetbe áll. Ezt a jelölőt a jelölővelTVE_COLLAPSEegyütt kell használni.TVE_EXPANDKibontja a listát.TVE_TOGGLEÖsszecsukja a listát, ha jelenleg kibontja vagy kibontja, ha jelenleg össze van csukva.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
Lásd a példát a CTreeCtrl::EnsureVisible.
CTreeCtrl::GetBkColor
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETBKCOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF GetBkColor() const;
Visszaadott érték
Egy COLORREF érték, amely a vezérlőelem aktuális ablak háttérszínét jelöli. Ha ez az érték -1, a vezérlő a rendszerablak színét használja. Ebben az esetben lekérheti ::GetSysColor(COLOR_WINDOW) a vezérlő által használt aktuális rendszerszínt.
Example
Lásd a példát a CTreeCtrl::SetTextColor.
CTreeCtrl::GetCheck
A tagfüggvény meghívása egy elem ellenőrzési állapotának lekéréséhez.
BOOL GetCheck(HTREEITEM hItem) const;
Paraméterek
hItem
Az HTREEITEM állapotinformációk fogadásának helye.
Visszaadott érték
Nemzero, ha a fa vezérlőeleme be van jelölve; egyéb esetben 0.
Example
Lásd a példát a CTreeCtrl::SetCheck.
CTreeCtrl::GetChildItem
Hívja meg ezt a függvényt a megadott elem hItemgyermekelemének fanézeti elemének lekéréséhez.
HTREEITEM GetChildItem(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
A gyermekelem leírója, ha sikeres; egyéb esetben NULL.
Example
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
Hívja meg ezt a függvényt a fanézet vezérlőelem elemeinek számának lekéréséhez.
UINT GetCount() const;
Visszaadott érték
A fanézet vezérlőelem elemeinek száma.
Example
// Delete all of the items from the tree control.
m_TreeCtrl.DeleteAllItems();
ASSERT(m_TreeCtrl.GetCount() == 0);
CTreeCtrl::GetDropHilightItem
Hívja meg ezt a függvényt a húzási művelet célelemének lekéréséhez.
HTREEITEM GetDropHilightItem() const;
Visszaadott érték
Az elem leírója eldobott, ha sikeres; egyéb esetben NULL.
Example
// 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
Hívja meg ezt a függvényt a fanézetelem szövegének szerkesztéséhez használt szerkesztési vezérlő leírójának lekéréséhez.
CEdit* GetEditControl() const;
Visszaadott érték
Az elem szövegének szerkesztéséhez használt szerkesztési vezérlőre mutató mutató, ha sikeres; egyéb esetben NULL.
Example
// 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
Lekéri az aktuális fanézet vezérlőelem által használt kiterjesztett stílusokat.
DWORD GetExtendedStyle() const;
Visszaadott érték
Az aktuális fanézet vezérlőelem kiterjesztett stílusainak bitenkénti kombinációját (OR) tartalmazó érték. További információ: Tree-View Kiterjesztett stílusok szabályozása.
Megjegyzések
Ez a metódus elküldi a TVM_GETEXTENDEDSTYLE Windows SDK-ban leírt üzenetet.
CTreeCtrl::GetFirstVisibleItem
Hívja meg ezt a függvényt a fanézet vezérlőelem első látható elemének lekéréséhez.
HTREEITEM GetFirstVisibleItem() const;
Visszaadott érték
Az első látható elem fogópontja; egyéb esetben NULL.
Example
Lásd a példát a CTreeCtrl::SetCheck.
CTreeCtrl::GetImageList
Hívja meg ezt a függvényt a fanézet vezérlőelemhez társított normál vagy állapotképlista leírójának lekéréséhez.
CImageList* GetImageList(UINT nImageList) const;
Paraméterek
nImageList
A lekérendő képlista típusa. A képlista a következő értékek egyike lehet:
TVSIL_NORMALLekéri a normál képlistát, amely tartalmazza a fanézetelem kijelölt és nem kijelölt képeit.TVSIL_STATELekéri az állapotképlistát, amely a felhasználó által definiált állapotú fanézetelemek képeit tartalmazza.
Visszaadott érték
Ha sikeres, mutasson a vezérlő képlistájára; egyéb esetben NULL.
Megjegyzések
A fanézet vezérlőelem minden eleméhez társíthat bitleképezett képeket. Az elem kijelölésekor az egyik kép, a másik pedig akkor jelenik meg, ha az elem nincs kijelölve. Előfordulhat például, hogy egy elem egy megnyitott mappát jelenít meg, amikor ki van jelölve, és egy bezárt mappát, ha nincs kijelölve.
A képlistákról további információt az CImageList osztályban talál.
Example
ASSERT(m_TreeCtrl.GetImageList(TVSIL_NORMAL) == NULL);
m_TreeCtrl.SetImageList(&m_TreeImages, TVSIL_NORMAL);
ASSERT(m_TreeCtrl.GetImageList(TVSIL_NORMAL) == &m_TreeImages);
CTreeCtrl::GetIndent
Hívja meg ezt a függvényt a gyermekelemek szülőelemeihez viszonyított, képpontban kifejezett összegének lekéréséhez.
UINT GetIndent() const;
Visszaadott érték
A képpontokban mért behúzás mennyisége.
Example
// Double the indent.
UINT uIndent = m_TreeCtrl.GetIndent();
m_TreeCtrl.SetIndent(2 * uIndent);
CTreeCtrl::GetInsertMarkColor
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETINSERTMARKCOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF GetInsertMarkColor() const;
Visszaadott érték
Az COLORREF aktuális beszúrási jel színét tartalmazó érték.
Example
// 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
Hívja meg ezt a függvényt a megadott fanézetelem attribútumainak lekéréséhez.
BOOL GetItem(TVITEM* pItem) const;
Paraméterek
pItem
Mutató egy TVITEM struktúrára a Windows SDK-ban leírtak szerint.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
Lásd a példát a CTreeCtrl::DeleteItem.
CTreeCtrl::GetItemData
Hívja meg ezt a függvényt a megadott elemhez társított alkalmazásspecifikus érték lekéréséhez.
DWORD_PTR GetItemData(HTREEITEM hItem) const;
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek adatait le kell kérni.
Visszaadott érték
A megadott hItemelemhez társított mutatóméretű alkalmazásspecifikus érték.
Example
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
Lekéri a kép indexét, hogy megjelenjen, ha az aktuális fanézet vezérlőelem megadott eleme kibontott állapotban van.
int GetItemExpandedImageIndex(HTREEITEM hItem)const;
Paraméterek
hItem
[in] Fanézetű vezérlőelem kezelése.
Visszaadott érték
A kép indexe, amely akkor jelenik meg, ha a megadott elem kibontott állapotban van.
Megjegyzések
Ez a metódus elküldi a TVM_GETITEM Windows SDK-ban leírt üzenetet. Ez az üzenet a TVITEMEX fanézet vezérlőelemét leíró struktúrát adja vissza, majd ez a metódus lekéri a tagot ebből a iExpandedImage struktúrából.
CTreeCtrl::GetItemHeight
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETITEMHEIGHTviselkedését a Windows SDK-ban leírtak szerint.
SHORT GetItemHeight() const;
Visszaadott érték
Az elem magassága képpontban.
Example
// Double the height of the items.
SHORT sHeight = m_TreeCtrl.GetItemHeight();
m_TreeCtrl.SetItemHeight(2 * sHeight);
CTreeCtrl::GetItemImage
A fanézet vezérlőelem minden eleméhez társíthat bitleképezett képeket.
BOOL GetItemImage(
HTREEITEM hItem,
int& nImage,
int& nSelectedImage) const;
Paraméterek
hItem
Annak az elemnek a leírója, amelynek a képét le kell kérni.
nImage
Egész szám, amely az elem képének indexét fogadja a fanézet vezérlőjének képlistájában.
nSelectedImage
Egy egész szám, amely az elem kijelölt képének indexét fogadja a fanézet vezérlőjének képlistájában.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
A képek az elem címkéjének bal oldalán jelennek meg. Az elem kijelölésekor az egyik kép, a másik pedig akkor jelenik meg, ha az elem nincs kijelölve. Előfordulhat például, hogy egy elem egy megnyitott mappát jelenít meg, amikor ki van jelölve, és egy bezárt mappát, ha nincs kijelölve.
Ennek a függvénynek a meghívásával lekérheti az elem képének és kijelölt képének indexét a fanézet vezérlőjének képlistájában.
Example
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
Lekéri a határoló téglalapot egy adott elem adott részére az aktuális fanézet vezérlőelemben.
BOOL GetItemPartRect(
HTREEITEM hItem,
int nPart,
LPRECT lpRect)const;
Paraméterek
hItem
[in] Fanézetű vezérlőelem kezelése.
nPart
[in] A rész azonosítója. A értéknek TVGIPR_BUTTONkell lennie.
lpRect
[kifelé] Mutató egy struktúrára RECT . Ha ez a módszer sikeres, a struktúra megkapja a megadott rész hItemnParttéglalap koordinátáit.
Visszaadott érték
TRUEha ez a módszer sikeres; egyéb esetben. FALSE
Megjegyzések
Az egyes favezérlőelemeket egy grafikus téglalap határolja. Amikor a téglalap egy pontra kattint, a rendszer azt mondja, hogy az elem el lesz ütve. Ez a metódus a legnagyobb téglalapot adja vissza, így a téglalap egy pontjának kattintásakor a paraméter által hItem azonosított elem el lesz érve.
Ez a metódus elküldi a TVM_GETITEMPARTRECT Windows SDK-ban leírt üzenetet. További információt a makróban TreeView_GetItemPartRect talál.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód egy akadálymentességi azonosítót és egy CTreeCtrl::MapAccIdToItem leírót kér le a gyökérfanézetelemhez. Ezután a példa a fogópontot és a CTreeCtrl::GetItemPartRect metódust használja egy 3D téglalap rajzolásához az elem körül. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll. Ezzel a CTreeCtrl::MapItemToAccID módszerrel társítottuk a gyökérfanézeti elemet egy akadálymentességi azonosítóhoz.
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
Hívja meg ezt a függvényt a hItem határoló téglalapjának lekéréséhez, és határozza meg, hogy látható-e vagy sem.
BOOL GetItemRect(
HTREEITEM hItem,
LPRECT lpRect,
BOOL bTextOnly) const;
Paraméterek
hItem
Egy fanézet vezérlőelemének fogópontja.
lpRect
Mutasson a RECT határoló téglalapot fogadó struktúrára. A koordináták a fanézet vezérlőelem bal felső sarkához vannak viszonyítva.
bTextOnly
Ha ez a paraméter nem nulla, a határolókeret csak az elem szövegét tartalmazza. Ellenkező esetben a teljes sort tartalmazza, amelyet az elem a fanézet vezérlőelemben foglal el.
Visszaadott érték
Nonzero, ha az elem látható, és a határoló téglalapot tartalmazza lpRect. Ellenkező esetben 0 nem inicializált.lpRect
Example
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
A megadott hItemelem állapotát adja vissza.
UINT GetItemState(
HTREEITEM hItem,
UINT nStateMask) const;
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek állapotát le kell kérni.
nStateMask
Egy vagy több lekérendő állapotot jelző maszk. A lehetséges értékekről nStateMaska Windows SDK-ban a struktúra és stateMask a TVITEM tagok beszélgetésében state olvashat bővebben.
Visszaadott érték
A UINT a megadott értékek nStateMaskC++ bitenkénti OR operátorát (|) tartalmazza. A lehetséges értékekkel kapcsolatos információkért lásd: CTreeCtrl::GetItem. Egy adott állapot értékének megkereséséhez hajtsa végre a C++ bitenkénti AND operátort (&) f az állapotértéket és a visszatérési értéket az alábbi példában látható módon.
Example
// 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
Lekéri a megadott elem kiterjesztett állapotát az aktuális fanézet vezérlőelemben.
UINT GetItemStateEx(HTREEITEM hItem) const;
Paraméterek
hItem
[in] Fanézetű vezérlőelem kezelése.
Visszaadott érték
Az elem kiterjesztett állapota. További információkért lásd a uStateEx struktúra tagját TVITEMEX .
Megjegyzések
Ez a metódus elküldi a TVM_GETITEM Windows SDK-ban leírt üzenetet. Ez az üzenet a TVITEMEX fanézet vezérlőelemét leíró struktúrát adja vissza, és ez a metódus lekéri a tagot ebből a uStateEx struktúrából.
CTreeCtrl::GetItemText
A megadott hItemelem szövegét adja vissza.
CString GetItemText(HTREEITEM hItem) const;
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek a szövegét le szeretné kérni.
Visszaadott érték
Az CString elem szövegét tartalmazó objektum.
Example
Lásd a példát a CTreeCtrl::GetNextItem.
CTreeCtrl::GetLastVisibleItem
Lekéri az aktuális fanézet vezérlőelem utolsó nem kibontott csomópontelemét.
HTREEITEM GetLastVisibleItem() const;
Visszaadott érték
Ha a metódus sikeres, az utolsó nem felügyelt csomópontelemhez tartozó fogópont; egyéb esetben. NULL
Megjegyzések
Ez a metódus elküldi a TVM_GETNEXTITEM Windows SDK-ban leírt üzenetet. További információt az TVGN_LASTVISIBLE üzenet paraméterében található jelölőben flag talál.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. A következő példában egy vagy több ilyen változót használunk.
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;
A következő kódpéldában lekéri a leírót az utolsó kibontatlan fanézetű csomópontelemhez, majd rajzol egy 3D téglalapot az elem körül. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll.
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
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETLINECOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF GetLineColor() const;
Visszaadott érték
Az aktuális vonal színe.
Example
COLORREF cr = m_TreeCtrl.GetLineColor();
CTreeCtrl::GetNextItem
Hívja meg ezt a függvényt a megadott kapcsolattal bíró fanézetelem lekéréséhez a nCode következőre hItem: .
HTREEITEM GetNextItem(
HTREEITEM hItem,
UINT nCode) const;
Paraméterek
hItem
Faelem kezelése.
nCode
A reláció hItemtípusát jelző jelző. Ez a jelző a következő értékek egyike lehet:
TVGN_CARETLekéri az aktuálisan kijelölt elemet.TVGN_CHILDLekéri a paraméter által megadott elem első gyermekeleméthItem.TVGN_DROPHILITELekéri azt az elemet, amely egy húzási művelet célja.TVGN_FIRSTVISIBLELekéri az első látható elemet.TVGN_LASTVISIBLELekéri a fa utolsó kibontott elemét. Ez nem kéri le a fanézet ablakában látható utolsó elemet.TVGN_NEXTLekéri a következő testvérelemet.TVGN_NEXTVISIBLELekéri a következő látható elemet, amely a megadott elemet követi.TVGN_PARENTA megadott elem szülőjének lekérése.TVGN_PREVIOUSLekéri az előző testvérelemet.TVGN_PREVIOUSVISIBLELekéri a megadott elemet megelőző első látható elemet.TVGN_ROOTLekéri annak a gyökérelemnek az első gyermekelemét, amelynek a megadott elem része.
Visszaadott érték
A következő elem leírója, ha sikeres; egyéb esetben NULL.
Megjegyzések
Ez a függvény akkor jelenik meg NULL , ha a lekért elem a fa gyökércsomópontja. Ha például ezt az üzenetet a TVGN_PARENT fanézet gyökércsomópontjának első szintű gyermekén lévő jelölővel használja, az üzenet vissza fog térni NULL.
Example
A ciklusban való használatra GetNextItem példa: 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
Hívja meg ezt a függvényt a következő testvér lekéréséhez hItem.
HTREEITEM GetNextSiblingItem(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
A következő testvérelem fogópontja; egyéb esetben NULL.
Example
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
Hívja meg ezt a függvényt a következő látható elem lekéréséhez hItem.
HTREEITEM GetNextVisibleItem(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
A következő látható elem fogópontja; egyéb esetben NULL.
Example
Lásd a példát a CTreeCtrl::SetCheck.
CTreeCtrl::GetParentItem
Hívja meg ezt a függvényt a szülőjének lekéréséhez hItem.
HTREEITEM GetParentItem(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
A szülőelem leírója; egyéb esetben NULL.
Megjegyzések
Ez a függvény akkor jelenik meg NULL , ha a megadott elem szülője a fa gyökércsomópontja.
Example
Lásd a példát a CTreeCtrl::EnsureVisible.
CTreeCtrl::GetPrevSiblingItem
Hívja meg ezt a függvényt az előző testvér lekéréséhez hItem.
HTREEITEM GetPrevSiblingItem(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
Az előző testvér fogópontja; egyéb esetben NULL.
Example
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
Hívja meg ezt a függvényt az előző látható elem lekéréséhez hItem.
HTREEITEM GetPrevVisibleItem(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
Az előző látható elem fogópontja; egyéb esetben NULL.
Example
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
Hívja meg ezt a függvényt a fanézet vezérlőelem gyökérelemének lekéréséhez.
HTREEITEM GetRootItem() const;
Visszaadott érték
A gyökérelem fogópontja; egyéb esetben NULL.
Example
Lásd a példát a CTreeCtrl::EditLabel.
CTreeCtrl::GetScrollTime
Hívja meg ezt a tagfüggvényt a fanézet vezérlőelem maximális görgetési idejének lekéréséhez.
UINT GetScrollTime() const;
Visszaadott érték
A maximális görgetési idő ezredmásodpercben.
Megjegyzések
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETSCROLLTIMEviselkedését a Windows SDK-ban leírtak szerint.
CTreeCtrl::GetSelectedCount
Lekéri az aktuális fanézet vezérlőelem kijelölt elemeinek számát.
UINT GetSelectedCount();
Visszaadott érték
A kijelölt elemek száma.
Megjegyzések
Ez a metódus elküldi a TVM_GETSELECTEDCOUNT Windows SDK-ban leírt üzenetet.
CTreeCtrl::GetSelectedItem
Hívja meg ezt a függvényt a fanézet vezérlőelem jelenleg kijelölt elemének lekéréséhez.
HTREEITEM GetSelectedItem() const;
Visszaadott érték
A kijelölt elem fogópontja; egyéb esetben NULL.
Example
// 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
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETTEXTCOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF GetTextColor() const;
Visszaadott érték
Az COLORREF aktuális szövegszínt jelképező érték. Ha ez az érték -1, a vezérlő a szövegszín rendszerszínét használja.
Example
Lásd a példát a CTreeCtrl::SetTextColor.
CTreeCtrl::GetToolTips
Ez a tagfüggvény implementálja a Win32-üzenet TVM_GETTOOLTIPSviselkedését a Windows SDK-ban leírtak szerint.
CToolTipCtrl* GetToolTips() const;
Visszaadott érték
A fa vezérlőelem által használandó objektumra mutató mutató CToolTipCtrl . Ha a Create tagfüggvény a stílust TVS_NOTOOLTIPShasználja, a rendszer nem használ elemleírásokat, és NULL visszaadja.
Megjegyzések
Az MFC-implementáció GetToolTips egy CToolTipCtrl objektumot ad vissza, amelyet a favezérlő használ, nem pedig egy elemleírás-vezérlő fogópontját.
Example
// 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
Hívja meg ezt a függvényt a fanézet vezérlőelem látható elemeinek számának lekéréséhez.
UINT GetVisibleCount() const;
Visszaadott érték
A fanézet vezérlőelem látható elemeinek száma; egyéb esetben - 1.
Example
Lásd a példát a CTreeCtrl::SetCheck.
CTreeCtrl::HitTest
A függvény meghívásával meghatározhatja a megadott pont helyét a fanézet vezérlőelem ügyfélterületéhez viszonyítva.
HTREEITEM HitTest(
CPoint pt,
UINT* pFlags = NULL) const;
HTREEITEM HitTest(TVHITTESTINFO* pHitTestInfo) const;
Paraméterek
pt
A tesztelni kívánt pont ügyfélkoordinátái.
pFlags
Mutasson egy egész számra, amely információt kap a találati teszt eredményeiről. A Megjegyzések szakaszban a tag alatt flags felsorolt értékek közül egy vagy több is lehet.
pHitTestInfo
Egy TVHITTESTINFO olyan struktúra címe, amely tartalmazza a találati pozíciót, és amely információt kap a találati teszt eredményeiről.
Visszaadott érték
A megadott pontot elfoglaló fanézetelem leírója, vagy NULL ha egyetlen elem sem foglalja el a pontot.
Megjegyzések
A függvény meghívásakor a pt paraméter megadja a tesztelni kívánt pont koordinátáit. A függvény az elem fogópontját adja vissza a megadott ponton, vagy NULL ha egyetlen elem sem foglalja el a pontot. A paraméter emellett egy értéket is tartalmaz, pFlags amely a megadott pont helyét jelzi. A lehetséges értékek a következők:
| Érték | Description |
|---|---|
TVHT_ABOVE |
Az ügyfélterület felett. |
TVHT_BELOW |
Az ügyfélterület alatt. |
TVHT_NOWHERE |
Az ügyfélterületen, de az utolsó elem alatt. |
TVHT_ONITEM |
Az elemhez társított bittérképen vagy címkén. |
TVHT_ONITEMBUTTON |
Az elemhez társított gombon. |
TVHT_ONITEMICON |
Az elemhez társított bitképen. |
TVHT_ONITEMINDENT |
Az elemhez társított behúzásban. |
TVHT_ONITEMLABEL |
Az elemhez társított címkén (sztringen). |
TVHT_ONITEMRIGHT |
Az elem jobb oldalán. |
TVHT_ONITEMSTATEICON |
Felhasználó által definiált állapotú fanézeti elem állapotikonján. |
TVHT_TOLEFT |
Az ügyfélterület bal oldalán. |
TVHT_TORIGHT |
Az ügyfélterület jobb oldalán. |
Example
// 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
Hívja meg ezt a függvényt, ha új elemet szeretne beszúrni egy fanézet vezérlőelembe.
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);
Paraméterek
lpInsertStruct
A beszúrni kívánt fanézetelem attribútumait meghatározó mutató TVINSERTSTRUCT .
nMask
Egész szám, amely megadja, hogy mely attribútumokat kell beállítani. Tekintse meg a TVITEM Windows SDK struktúráját.
lpszItem
Az elem szövegét tartalmazó sztring címe.
nImage
Az elem képének indexe a fanézet vezérlőjének képlistájában.
nSelectedImage
Az elem kijelölt képének indexe a fanézet vezérlőjének képlistájában.
nState
Az elem állapotának értékeit adja meg. A megfelelő állapotok listáját a Windows SDK Fanézet vezérlőelem-állapotaiban találja.
nStateMask
Megadja, hogy mely állapotokat kell beállítani. Tekintse meg a TVITEM Windows SDK struktúráját.
lParam
Az elemhez társított mutatóméretű alkalmazásspecifikus érték.
hParent
A beszúrt elem szülőjének kezelése.
hInsertAfter
Annak az elemnek a kezelése, amely után az új elemet be szeretné szúrni.
Visszaadott érték
Az új elem kezelése, ha sikeres; egyéb esetben NULL.
Megjegyzések
A példa olyan helyzeteket mutat be, amelyekben a függvény egyes verzióit érdemes használni egy favezérlőelem beszúrásakor.
Example
// 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
Ezzel a függvénnyel meghatározhatja, hogy a megadott hItem faelem tartalmaz-e gyermekelemeket.
BOOL ItemHasChildren(HTREEITEM hItem) const;
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
Nonzero, ha a megadott hItem faelem gyermekelemekkel rendelkezik; 0, ha nem.
Megjegyzések
Ha igen, akkor ezeket CTreeCtrl::GetChildItem a gyermekelemeket is lekérheti.
Example
Lásd a példát a CTreeCtrl::GetSelectedItem.
CTreeCtrl::MapAccIdToItem
A megadott akadálymentességi azonosítót az aktuális fanézet vezérlőelem fanézeti elemének leírójára képezi le.
HTREEITEM MapAccIdToItem(UINT uAccId) const;
Paraméterek
uAccId
[in] A fanézetelem egy elemének akadálymentességi azonosítója.
Visszaadott érték
A paraméternek megfelelő uAccId fanézeti elem (HTREEITEM) fogópontja. További információkért lásd a hItem struktúra tagját TVITEMEX .
Megjegyzések
Az akadálymentességi segédletek olyan alkalmazások, amelyek segítenek a fogyatékkal élőknek a számítógépek használatában. Az interfész egy akadálymentességi azonosítót használ az IAccessible ablak egy elemének egyedi megadásához. Az API-kkal kapcsolatos további információkért IAccessible lásd: Microsoft Active Accessibility.
Ez a metódus elküldi a TVM_MAPACCIDTOHTREEITEM Windows SDK-ban leírt üzenetet.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód egy akadálymentességi azonosítót és egy CTreeCtrl::MapAccIdToItem leírót kér le a gyökérfanézetelemhez. A példa a fogópontot és a CTreeCtrl::GetItemPartRect metódust használja egy 3D téglalap rajzolásához az elem körül. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll. Ezzel a CTreeCtrl::MapItemToAccID módszerrel társítottuk a gyökérfanézeti elemet egy akadálymentességi azonosítóhoz.
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
Az aktuális fanézet vezérlőelem fanézeti elemének megadott leíróját egy akadálymentességi azonosítóra képezi le.
UINT MapItemToAccID(HTREEITEM hItem) const;
Paraméterek
hItem
[in] Egy fanézetű elem fogópontja a vezérlőben. További információkért lásd a hItem struktúra tagját TVITEMEX .
Visszaadott érték
A hItem paraméternek megfelelő akadálymentességi azonosító.
Megjegyzések
Az akadálymentességi segédletek olyan alkalmazások, amelyek segítenek a fogyatékkal élőknek a számítógépek használatában. Az interfész egy akadálymentességi azonosítót használ az IAccessible ablak egy elemének egyedi megadásához. Az API-kkal kapcsolatos további információkért IAccessible lásd: Microsoft Active Accessibility.
Ez a metódus elküldi a TVM_MAPHTREEITEMTOACCID Windows SDK-ban leírt üzenetet.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód egy fanézetű vezérlőelem azonosítószámát szerzi be. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll. Ez a példakód beolvas egy egyedi azonosítószámot a gyökérország/régió csomóponthoz.
// Map an accessibility identifier to the Pennsylvania node.
accIdUS = m_treeCtrl.MapItemToAccId(hCountry);
CTreeCtrl::Select
Ennek a függvénynek a meghívásával jelölje ki az adott fanézeti elemet, görgesse az elemet a nézetbe, vagy állítsa újra az elemet a húzási művelet céljának jelzésére használt stílusban.
BOOL Select(
HTREEITEM hItem,
UINT nCode);
Paraméterek
hItem
Faelem kezelése.
nCode
A végrehajtandó művelet típusa. Ez a paraméter a következő értékek egyike lehet:
TVGN_CARETA kijelölést az adott elemre állítja.TVGN_DROPHILITEA húzási művelet céljának jelzéséhez használt stílusban újrarajzozza az adott elemet.TVGN_FIRSTVISIBLEFüggőlegesen görgeti a fanézetet, hogy az adott elem legyen az első látható elem.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
Ha nCode tartalmazza az értéket TVGN_CARET, a szülőablak megkapja az és az TVN_SELCHANGINGTVN_SELCHANGED értesítési üzeneteket. Ezenkívül ha a megadott elem egy összecsukott szülőelem gyermeke, a szülő gyermekelemeinek listája ki van bontva a megadott elem megjelenítéséhez. Ebben az esetben a szülőablak megkapja az és az értesítési TVN_ITEMEXPANDINGTVN_ITEMEXPANDED üzeneteket.
Example
Lásd a példát a CTreeCtrl::HitTest.
CTreeCtrl::SelectDropTarget
Hívja meg ezt a függvényt, hogy újrarajzozza az elemet a húzási művelet céljának jelzéséhez használt stílusban.
BOOL SelectDropTarget(HTREEITEM hItem);
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
// 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
Hívja meg ezt a függvényt a megadott fanézetelem kiválasztásához.
BOOL SelectItem(HTREEITEM hItem);
Paraméterek
hItem
Faelem kezelése.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
Ha hItem igen NULL, akkor ez a függvény nem jelöl ki elemet.
Example
// 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
A függvény meghívásával függőlegesen görgetheti a fanézetet, hogy az adott elem legyen az első látható elem.
BOOL SelectSetFirstVisible(HTREEITEM hItem);
Paraméterek
hItem
Az első látható elemként beállítani kívánt faelem kezelése.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
A függvény üzenetet küld az ablaknak az és TVGN_FIRSTVISIBLE az TVM_SELECTITEM üzenet paramétereivel együtt.
Example
// 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
Beállítja az aktuális fanézet vezérlő automatikus regisztrációjának sebességét.
BOOL SetAutoscrollInfo(
UINT uPixelsPerSec,
UINT uUpdateTime);
Paraméterek
uPixelsPerSec
[in] A görgetéshez másodpercenkénti képpontok száma.
uUpdateTime
[in] A vezérlő frissítései közötti időintervallum.
Visszaadott érték
Mindig TRUEad vissza.
Megjegyzések
Az automatikus regisztráció paramétereinek használatával görgethet egy jelenleg nem látható elem megtekintéséhez. A fanézet vezérlőelemnek kiterjesztett stílussal kell rendelkeznie TVS_EX_AUTOHSCROLL , amelyet Tree-View Kiterjesztett stílusok vezérlése című cikkben ismertetünk.
Ez a metódus elküldi a TVM_SETAUTOSCROLLINFO Windows SDK-ban leírt üzenetet.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód az aktuális fanézet vezérlőelem automatikus regisztrációjának viselkedését állítja be. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll. Szándékosan keskenyre tettük a fanézet vezérlőt, hogy automatikusan görgessen a fókuszt tartalmazó faelem megjelenítéséhez. A példakód úgy állítja be a fanézet vezérlőt, hogy 5 másodpercenként automatikusan 30 képpontot görgetjen, amíg a faelem meg nem nézetben van.
// Scroll 30 pixels/sec and redraw every 5 seconds.
m_treeCtrl.SetAutoscrollInfo(30, 5);
CTreeCtrl::SetBkColor
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETBKCOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF SetBkColor(COLORREF clr);
Paraméterek
clr
Az COLORREF új háttérszínt tartalmazó érték. Ha ez az érték -1, a vezérlő visszaáll a háttérszín rendszerszínének használatára.
Visszaadott érték
Az COLORREF aktuális szövegszínt jelképező érték. Ha ez az érték -1, a vezérlő a szövegszín rendszerszínét használja.
Example
Lásd a példát a CTreeCtrl::SetTextColor.
CTreeCtrl::SetCheck
Hívja meg ezt a tagfüggvényt egy fa vezérlőelem állapotának beállításához.
BOOL SetCheck(
HTREEITEM hItem,
BOOL fCheck = TRUE);
Paraméterek
hItem
Az HTREEITEM ellenőrző állapot módosításának fogadása.
fCheck
Azt jelzi, hogy a fa vezérlőelemét ellenőrizni kell-e, vagy nem kell-e bejelölni. Alapértelmezés szerint SetCheck beállítja a ellenőrizni kívánt elemet.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
Ha a favezérlő elem be van jelölve (fCheck a beállítás értéke TRUE), az elem egy szomszédos pipával jelenik meg.
Example
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);
}
A jelölőnégyzetek használatához állítsa be TVS_CHECKBOXES a fa vezérlőelem előugró ablakát.
m_TreeCtrl.ModifyStyle(0, TVS_CHECKBOXES);
HTREEITEM aItem = m_TreeCtrl.InsertItem(_T("AAA"));
m_TreeCtrl.SetCheck(aItem);
CTreeCtrl::SetExtendedStyle
Az aktuális fanézet vezérlőelem kiterjesztett stílusainak beállítása.
DWORD SetExtendedStyle(
DWORD dwExMask,
DWORD dwExStyles);
Paraméterek
dwExMask
[in] Egy bitmaszk, amely meghatározza, hogy az aktuális fanézet vezérlőelem mely stílusait érinti ez a módszer. Ha ez a paraméter nulla, a rendszer figyelmen kívül hagyja, és a dwExStyles paraméter értéke hozzá van rendelve a fanézet vezérlőelemhez. Adjon meg nulla vagy bitenkénti kombinációt (OR) a Tree-View Kiterjesztett stílusok szabályozása című cikkben leírt stílusok közül.
dwExStyles
[in] Bitmaszk, amely meghatározza, hogy az aktuális fanézet vezérlőelem mely stílusait állítsa be vagy törölje. A stílusok kombinációjának beállításához adja meg a Tree-View Kiterjesztett stílusok szabályozása című cikkben leírt stílusok bitenkénti kombinációját (VAGY). Stíluskészlet törléséhez adjon meg nullát.
Visszaadott érték
Az előző kiterjesztett vezérlőstílusokat tartalmazó érték.
Megjegyzések
Ez a metódus törli a paraméterben dwExMask megadott stílusokat, majd beállítja a dwExStyles paraméterben megadott stílusokat. Csak a módosított biteknek megfelelő kiterjesztett stílusok dwExMask .
Ez a metódus elküldi a TVM_SETEXTENDEDSTYLE Windows SDK-ban leírt üzenetet.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód hozzáadja a TVS_EX_AUTOHSCROLL kiterjesztett stílust az aktuális fanézet vezérlőelemhez. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll. Szándékosan keskenyre tettük a fanézet vezérlőt, hogy automatikusan görgessen a fókuszt tartalmazó faelem megjelenítéséhez.
m_treeCtrl.SetExtendedStyle(TVS_EX_AUTOHSCROLL, TVS_EX_AUTOHSCROLL);
CTreeCtrl::SetImageList
Hívja meg ezt a függvényt, hogy beállítsa a fanézet vezérlőelem normál vagy állapotképlistáját, és az új rendszerképek használatával újrarajzozza a vezérlőt.
CImageList* SetImageList(
CImageList* pImageList,
int nImageListType);
Paraméterek
pImageList
Mutasson a hozzárendelni kívánt képlistára. Ha pImageList igen NULL, az összes kép el lesz távolítva a fanézet vezérlőből.
nImageListType
A beállítani kívánt képlista típusa. A képlista a következő értékek egyike lehet:
TVSIL_NORMALBeállítja a normál képlistát, amely tartalmazza a fanézetelem kijelölt és nem kijelölt képeit. Ezt az állapotot kell használnia a képek átfedéséhez.TVSIL_STATEBeállítja az állapotképlistát, amely tartalmazza a felhasználó által meghatározott állapotban lévő fanézetelemek képeit.
Visszaadott érték
Mutasson az előző képlistára, ha van ilyen; egyéb esetben NULL.
Example
Lásd a példát a CTreeCtrl::GetImageList.
CTreeCtrl::SetIndent
Hívja meg ezt a függvényt a fanézet vezérlőelem behúzási szélességének beállításához, majd az új szélességet tükröző vezérlőelem újrarajzolásához.
void SetIndent(UINT nIndent);
Paraméterek
nIndent
A behúzás szélessége képpontban. Ha nIndent kisebb, mint a rendszer által meghatározott minimális szélesség, az új szélesség a rendszer által meghatározott minimálisra van állítva.
Example
Lásd a példát a CTreeCtrl::GetIndent.
CTreeCtrl::SetInsertMark
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETINSERTMARKviselkedését a Windows SDK-ban leírtak szerint.
BOOL SetInsertMark(
HTREEITEM hItem,
BOOL fAfter = TRUE);
Paraméterek
hItem
HTREEITEM amely megadja, hogy a beszúrási jel melyik elemet fogja elhelyezni. Ha ez az argumentum NULL, a beszúrási jel el lesz távolítva.
fAfter
BOOL-érték, amely megadja, hogy a beszúrási jel a megadott elem előtt vagy után van-e elhelyezve. Ha ez az argumentum nem nulla, a beszúrási jel az elem után lesz elhelyezve. Ha ez az argumentum nulla, a beszúrási jel az elem elé kerül.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
// 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
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETINSERTMARKCOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF SetInsertMarkColor(COLORREF clrNew);
Paraméterek
clrNew
Az COLORREF új beszúrási jel színét tartalmazó érték.
Visszaadott érték
Az COLORREF előző beszúrási jel színét tartalmazó érték.
Example
Lásd a példát a CTreeCtrl::GetInsertMarkColor.
CTreeCtrl::SetItem
Hívja meg ezt a függvényt a megadott fanézetelem attribútumainak beállításához.
BOOL SetItem(TVITEM* pItem);
BOOL SetItem(
HTREEITEM hItem,
UINT nMask,
LPCTSTR lpszItem,
int nImage,
int nSelectedImage,
UINT nState,
UINT nStateMask,
LPARAM lParam);
Paraméterek
pItem
Az új elemattribútumokat tartalmazó struktúra mutatója TVITEM a Windows SDK-ban leírtak szerint.
hItem
Annak az elemnek a kezelése, amelynek attribútumait be kell állítani. Tekintse meg a hItemTVITEM struktúra tagját a Windows SDK-ban.
nMask
Egész szám, amely megadja, hogy mely attribútumokat kell beállítani. Tekintse meg a mask struktúra tagját TVITEM .
lpszItem
Az elem szövegét tartalmazó sztring címe.
nImage
Az elem képének indexe a fanézet vezérlőjének képlistájában. Tekintse meg a iImage struktúra tagját TVITEM .
nSelectedImage
Az elem kijelölt képének indexe a fanézet vezérlőjének képlistájában. Tekintse meg a iSelectedImage struktúra tagját TVITEM .
nState
Az elem állapotának értékeit adja meg. Tekintse meg a State struktúra tagját TVITEM .
nStateMask
Megadja, hogy mely állapotokat kell beállítani. Tekintse meg a stateMask struktúra tagját TVITEM .
lParam
Az elemhez társított mutatóméretű alkalmazásspecifikus érték.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
A struktúrában a TVITEMhItem tag azonosítja az elemet, a mask tag pedig meghatározza, hogy mely attribútumokat kell beállítani.
Ha a mask tag vagy a nMask paraméter megadja az TVIF_TEXT értéket, akkor a pszText tag vagy a lpszItem tag egy null értékű sztring címe, és a rendszer figyelmen kívül hagyja a cchTextMax tagot. Ha mask (vagy nMask) megadja az TVIF_STATE értéket, a stateMask tag vagy a nStateMask paraméter határozza meg, hogy mely elemállapotok változnak, és a state tag vagy nState paraméter tartalmazza az adott állapotok értékeit.
Example
// 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
Hívja meg ezt a függvényt a megadott elemhez társított alkalmazásspecifikus érték beállításához.
BOOL SetItemData(
HTREEITEM hItem,
DWORD_PTR dwData);
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek adatait le kell kérni.
dwData
A megadott hItemelemhez társított mutatóméretű alkalmazásspecifikus érték.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
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
A kép indexét úgy állítja be, hogy megjelenjen, ha az aktuális fanézet vezérlőelem megadott eleme kibontott állapotban van.
BOOL SetItemExpandedImageIndex(
HTREEITEM hItem,
int iExpandedImage);
Paraméterek
hItem
[in] Fanézetű vezérlőelem kezelése.
iExpandedImage
[in] A kép indexe, amely akkor jelenik meg, ha a megadott elem kibontott állapotban van.
Visszaadott érték
TRUEha ez a módszer sikeres; egyéb esetben. FALSE
Megjegyzések
Ez a metódus elküldi a TVM_SETITEM Windows SDK-ban leírt üzenetet. Ez a metódus hozzárendeli a iExpandedImage paramétert egy iExpandedImageTVITEMEX struktúra tagához, majd ezt a struktúrát használja az üzenetben.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód egy triviális teszt, amely meghatározza, hogy a CTreeCtrl::GetItemExpandedImageIndex metódus visszaadja-e a CTreeCtrl::SetItemExpandedImageIndex metódus által beállított értéket. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll.
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
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETITEMHEIGHTviselkedését a Windows SDK-ban leírtak szerint.
SHORT SetItemHeight(SHORT cyHeight);
Paraméterek
cyHeight
A fanézetben lévő összes elem új magasságát adja meg képpontban. Ha ez az argumentum kisebb, mint a képek magassága, akkor a rendszer a képek magasságára állítja. Ha ez az argumentum nem páros, akkor a függvény a legközelebbi páros értékre kerekítve jelenik meg. Ha ez az argumentum -1, a vezérlőelem visszaáll az alapértelmezett elemmagasság használatára.
Visszaadott érték
Az elemek előző magassága képpontban.
Example
Lásd a példát a CTreeCtrl::GetItemHeight.
CTreeCtrl::SetItemImage
Képek társítása elemhez.
BOOL SetItemImage(
HTREEITEM hItem,
int nImage,
int nSelectedImage);
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek a rendszerképét be kell állítani.
nImage
Az elem képének indexe a fanézet vezérlőjének képlistájában.
nSelectedImage
Az elem kijelölt képének indexe a fanézet vezérlőjének képlistájában.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
A fanézet vezérlőelem minden eleméhez társíthat bitleképezett képeket. A képek az elem címkéjének bal oldalán jelennek meg. Az elem kijelölésekor az egyik kép, a másik pedig akkor jelenik meg, ha az elem nincs kijelölve. Előfordulhat például, hogy egy elem egy megnyitott mappát jelenít meg, amikor ki van jelölve, és egy bezárt mappát, ha nincs kijelölve.
Hívja meg ezt a függvényt az elem képének és kijelölt képének indexének beállításához a fanézet vezérlőjének képlistájában.
További információ a képekről: CImageList.
Example
Lásd a példát a CTreeCtrl::GetItemImage.
CTreeCtrl::SetItemState
A megadott hItemelem állapotát állítja be.
BOOL SetItemState(
HTREEITEM hItem,
UINT nState,
UINT nStateMask);
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek állapotát be kell állítani.
nState
Új állapotokat ad meg az elemhez.
nStateMask
Meghatározza, hogy mely állapotokat kell módosítani.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
Az állapotokkal kapcsolatos információkért lásd: CTreeCtrl::GetItem.
Example
Lásd a példát a CTreeCtrl::GetItemState.
CTreeCtrl::SetItemStateEx
A megadott elem kiterjesztett állapotát állítja be az aktuális fanézet vezérlőelemben.
BOOL SetItemStateEx(
HTREEITEM hItem,
UINT uStateEx);
Paraméterek
hItem
[in] Fanézetű vezérlőelem kezelése.
uStateEx
[in] Az elem kiterjesztett állapota. További információkért lásd a uStateEx struktúra tagját TVITEMEX .
Visszaadott érték
TRUEha ez a módszer sikeres; egyéb esetben. FALSE
Megjegyzések
Ez a metódus elküldi a TVM_SETITEM Windows SDK-ban leírt üzenetet. Ez a metódus hozzárendeli a uStateEx paramétert egy uStateExTVITEMEX struktúra tagához, majd ezt a struktúrát használja az üzenetben.
Example
Az első példakód egy változót határoz meg, m_treeCtrlamely az aktuális fanézet-vezérlő elérésére szolgál. A példakód egy aláíratlan egész számot és több HTREEITEM változót is definiál. Ezeket a változókat a következő példában használjuk.
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;
A következő példakód egy fanézeti elemet letiltott állapotra állít be. A kódpéldának egy korábbi szakaszában, amely nem látható, létrehoztunk egy fanézetet, amely az Egyesült Államok gyökérország-/régiócsomópontjaiból, Pennsylvania és Washington állam alcsomópontjaiból, valamint az adott államok városainak faelemeiből áll. Ez a példakód letiltott állapotra állítja a Pennsylvania csomópontot.
// Disable the Pennsylvania node.
m_treeCtrl.SetItemStateEx(hPA, TVIS_EX_DISABLED);
CTreeCtrl::SetItemText
A megadott hItemelem szövegét állítja be.
BOOL SetItemText(
HTREEITEM hItem,
LPCTSTR lpszItem);
Paraméterek
hItem
Annak az elemnek a kezelése, amelynek a szövegét be kell állítani.
lpszItem
Az elem új szövegét tartalmazó sztring címe
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Example
// 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
Hívja meg ezt a tagfüggvényt a fanézet vezérlőelem aktuális vonalszínének beállításához.
COLORREF SetLineColor(COLORREF clrNew = CLR_DEFAULT);
Paraméterek
clrNew
Az új vonalszín.
Visszaadott érték
Az előző vonal színe.
Megjegyzések
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETLINECOLORviselkedését a Windows SDK-ban leírtak szerint.
Example
COLORREF clrPrev = m_TreeCtrl.SetLineColor(RGB(255, 0, 0));
CTreeCtrl::SetScrollTime
Hívja meg ezt a tagfüggvényt a fanézet vezérlőelem maximális görgetési idejének beállításához.
UINT SetScrollTime(UINT uScrollTime);
Paraméterek
uScrollTime
Az új maximális görgetési idő ezredmásodpercben. Ha ez az érték 100-nál kisebb, akkor a rendszer 100-ra kerekít.
Visszaadott érték
Az előző maximális görgetési idő ezredmásodpercben.
Megjegyzések
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETSCROLLTIMEviselkedését a Windows SDK-ban leírtak szerint.
CTreeCtrl::SetTextColor
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETTEXTCOLORviselkedését a Windows SDK-ban leírtak szerint.
COLORREF SetTextColor(COLORREF clr);
Paraméterek
clr
Az COLORREF új szövegszínt tartalmazó érték. Ha ez az argumentum -1, a vezérlő a szövegszín rendszerszínét fogja használni.
Visszaadott érték
Az COLORREF előző szövegszínt jelképező érték. Ha ez az érték -1, a vezérlő a szövegszín rendszerszínét használta.
Example
// 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
Ez a tagfüggvény implementálja a Win32-üzenet TVM_SETTOOLTIPSviselkedését a Windows SDK-ban leírtak szerint.
CToolTipCtrl* SetToolTips(CToolTipCtrl* pWndTip);
Paraméterek
pWndTip
Egy olyan objektumra CToolTipCtrl mutató mutató, amelyet a favezérlő használni fog.
Visszaadott érték
Mutató egy CToolTipCtrl olyan objektumra, amely tartalmazza a vezérlő által korábban használt elemleírást, vagy NULL ha korábban nem használtak elemleírásokat.
Megjegyzések
Elemleírások használatához jelölje meg a TVS_NOTOOLTIPS stílust az CTreeCtrl objektum létrehozásakor.
Example
Lásd a példát a CTreeCtrl::GetToolTips.
CTreeCtrl::ShowInfoTip
Megjeleníti a megadott elemhez tartozó információs tippet az aktuális fanézet vezérlőelemben.
void ShowInfoTip(HTREEITEM hItem);
Paraméterek
hItem
[in] Fogópont egy fanézetű elemhez a vezérlőben. További információkért lásd a hItem struktúra tagját TVITEMEX .
Megjegyzések
Az elemleírások és az információs tippek közötti különbségről további információt az elemleírások és az információs tippek című témakörben talál.
Ez a metódus elküldi a TVM_SHOWINFOTIP Windows SDK-ban leírt üzenetet.
CTreeCtrl::SortChildren
Ennek a függvénynek a meghívásával betűrendbe rendezheti az adott szülőelem gyermekelemeit egy fanézet vezérlőelemben.
BOOL SortChildren(HTREEITEM hItem);
Paraméterek
hItem
Annak a szülőelemnek a kezelése, amelynek gyermekelemeit rendezni kell. Ha hItem igen NULL, a rendezés a fa gyökerétől folytatódik.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
SortChildren nem ismétlődik a fa; csak a közvetlen gyermekek hItem lesznek rendezve.
Example
// Sort all of the items in the tree control.
m_TreeCtrl.SortChildren(TVI_ROOT);
CTreeCtrl::SortChildrenCB
Ezt a függvényt meghívva rendezheti a fanézet elemeit egy alkalmazás által definiált visszahívási függvény használatával, amely összehasonlítja az elemeket.
BOOL SortChildrenCB(LPTVSORTCB pSort);
Paraméterek
pSort
Mutató egy struktúrára TVSORTCB .
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
A struktúra összehasonlító függvényének negatív értéket kell visszaadnia, lpfnCompareha az első elemnek meg kell előznie a másodikat, pozitív értéket, ha az első elemnek a másodikat kell követnie, vagy nullát, ha a két elem egyenértékű.
A lParam1 paraméterek a lParam2 két összehasonlítandó elem struktúrájának TVITEM tagjának felelnek lParam meg. A lParamSort paraméter a struktúra tagjának TV_SORTCB felel meglParam.
Example
// 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);
Lásd még
MFC-minta CMNCTRL1
CWnd osztály
hierarchiadiagram
CImageList osztály