[UI - Tree] item 선택된 항목 계속 표시 방법

2015. 6. 8. 13:41IT-개발/winapi 및 MFC

반응형

Tree 에서 특정 item 항목을 선택하고 그게 계속 유지되도록 하는 방법은 2가지 인거 같다.


정식은 



BOOL CMyTreeView::PreCreateWindow(CREATESTRUCT& cs)

{

             // TODO: Modify the Window class or styles here by modifying

             cs.style|=TVS_SHOWSELALWAYS;

             return CTreeView::PreCreateWindow(cs);

}


처럼, TVS_SHOWSELALWAYS 속성을 하나더 추가해주는 방법인데~... 이렇게 해줘야~


foucus를 잃어 버렸을때, 회색으로 나와서 잘 알아보기가 어렵다.


그래서 ...


void CMyTreeView::OnTvnSelchanging(NMHDR *pNMHDR, LRESULT *pResult)

{

LPNMTREEVIEW pItem = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);



HTREEITEM hItem = pItem->itemNew.hItem;


if(hItem!=NULL)

Select(hItem, TVGN_DROPHILITE);

}


오롷게 처리해 주니까 파란색으로 잘 나온다~ ㅎㅎ~


Tree는 아직 잘 모르긋다~ 많이 써봐야쥐~ ㅋㅋㅋ~