mfc图片服务器(mfc图片控件表现图片)「mfc图片控件显示图片」

树形控件

MFC中利用CTreeCtrl类来封装树形控件各种操纵,树形控件可以用于树形布局,比如目次树等。此中有一个根节点root,下面有很多子节点。

常用属性设置:

初始化

设置图标并添加根节点和子节点:

m_icon_list.Create(32,32,ILC_COLOR32,3,3);

UINTicons[]={IDI_ICON_BTC32,IDI_ICON_LTC32,IDI_ICON_XRP32};

for(inti=0;i3;i++)

m_icon_list.Add(AfxGetApp()-LoadIconW(icons[i]));

m_tree.SetImageList(m_icon_list,L对阵IL_NORMAL);

HTREEITEMroot1=m_tree.InsertItem(_T("root1"),0,0);

HTREEITEMroot2=m_tree.InsertItem(_T("root2"),1,1);

HTREEITEMsub1=m_tree.InsertItem(_T("sub1"),2,2,root1);

m_tree.Expand(root1,TVE_EXPAND);

添加节点

voidCMyDlg::OnBnClickedBtnAdd()

{

UpdateData(TRUE);

if(!m_string.GetLength()){

AfxMessageBox(_T("请输入文本"));

return;

}

HTREEITEMitem=m_tree.GetSelectedItem();

if(!item)item=TVI_ROOT;

TVINSERTSTRUCTts={0};

ts.hParent=item;

ts.hInsertAfter=TVI_LAST;

ts.item.pszText=m_string.GetBuffer();

ts.item.mask=TVIF_TEXT|TVIF_IMAGE;

HTREEITEMnew_item=m_tree.InsertItem(ts);

m_tree.SelectItem(new_item);

m_tree.EnsureVisible(new_item);

m_string=_T("");

UpdateData(FALSE);

}

删除节点

voidCMyDlg::OnBnClickedBtnDel()

{

HTREEITEMitem=m_tree.GetSelectedItem();

if(!item){

AfxMessageBox(_T("请选择一个节点"));

return;

}

HTREEITEMparent=m_tree.GetParentItem(item);

m_tree.DeleteItem(item);

m_tree.SelectItem(parent);

}

修改节点

voidCMyDlg::OnBnClickedBtnModify()

{

UpdateData(TRUE);

mfc图片服务器(mfc图片控件显示图片) mfc图片服务器(mfc图片控件表现
图片)「mfc图片控件显示图片」 行业资讯

HTREEITEMitem=m_tree.GetSelectedItem();

if(!item){

AfxMessageBox(_T("请选择一个节点"));

return;

}

if(!m_string.GetLength()){

AfxMessageBox(_T("请输入文本"));

return;

}

m_tree.SetItemText(item,m_string);

}

添加事变

选择节点,编辑框表现节点中的内容:

voidCMyDlg::OnTvnSelchangedTree(NMHDR*pNMHDR,LRESULT*pResult)

{

LPNMTREEVIEWpNMTreeView=reinterpret_cast(pNMHDR);

UpdateData(TRUE);

HTREEITEMitem=m_tree.GetSelectedItem();

if(!item){

AfxMessageBox(_T("请选择一个节点"));

mfc图片服务器(mfc图片控件显示图片) mfc图片服务器(mfc图片控件表现
图片)「mfc图片控件显示图片」 行业资讯

return;

}

m_string=m_tree.GetItemText(item);

UpdateData(FALSE);

*pResult=0;

}

你可能想看:

客户评论

我要评论