VC MFC 常用控件使用方法-- CTreeCtrl

 

1,如果想单击树上的节点使其能够编辑需要在create时追加:TVS_EDITLABELS

     编辑后如果想让其能够保存,需要追加下面两个方法:

 

	ON_NOTIFY_REFLECT(TVN_BEGINLABELEDIT, OnBeginlabeledit)
	ON_NOTIFY_REFLECT(TVN_ENDLABELEDIT, OnEndlabeledit)


 

void CViewTree::OnBeginlabeledit(NMHDR* pNMHDR, LRESULT* pResult)
{
	TV_DISPINFO*   pTVDispInfo   =   (TV_DISPINFO*)pNMHDR;
     this->GetEditControl()->LimitText(50);   

	*pResult   =   0; 
}

void CViewTree::OnEndlabeledit(NMHDR* pNMHDR, LRESULT* pResult)
{
	TV_DISPINFO*   pTVDispInfo   =   (TV_DISPINFO*)pNMHDR;   
 
   WCHAR s[50];   
   this->GetEditControl()->GetWindowText(s,   50);   
                       TRACE(_T("%s\n"),   s);   
   this->SetItemText(GetSelectedItem(),   s);   
     
   *pResult   =   0;   

}


 

你可能感兴趣的:(VC MFC 常用控件使用方法-- CTreeCtrl)