为了显示本地文件重载了CCtrlList。现在双击CCtrlList里面的内容,如果双击的是文件那么做一些操作,如果是文件夹,执行父类默认的操作,请问怎么样实现。我的做法是void CShellListCtrl::OnNMDblclk(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMLISTVIEW pNMListView = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
if(pNMListView->iItem==-1)
return;
if(Typpeof(GetItemText(pNMListView->iItem,0)==A..)
{
......
}
else
{
SendMessage(WM_NOTIFY, NM_CLICK, (LPARAM)&nh);
}
*pResult = 0;
}
SendMessage(WM_NOTIFY, NM_CLICK, (LPARAM)&nh);有问题,请指教!!!多谢!!!
{
LPNMLISTVIEW pNMListView = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
if(pNMListView->iItem==-1)
return;
if(Typpeof(GetItemText(pNMListView->iItem,0)==A..)
{
......
}
else
{
SendMessage(WM_NOTIFY, NM_CLICK, (LPARAM)&nh);
}
*pResult = 0;
}
SendMessage(WM_NOTIFY, NM_CLICK, (LPARAM)&nh);有问题,请指教!!!多谢!!!
lvDispInfo.hdr.hwndFrom = GetParent()->m_hWnd;
lvDispInfo.hdr.idFrom = GetDlgCtrlID();
lvDispInfo.hdr.code = LVN_ITEMCHANGED;
lvDispInfo.item.mask = LVIF_TEXT;
lvDispInfo.item.iItem = m_iItem;
lvDispInfo.item.iSubItem = m_iSubItem;
lvDispInfo.item.pszText = text
lvDispInfo.item.cchTextMax = text length
GetParent()->SendMessage( WM_NOTIFY, GetDlgCtrlID(),(LPARAM)&lvDispInfo);
由于父类是Codejock Software 里的CXTShellListCtrl,刚才试了不行,如果再建一个父类,不知道OnNMDblclk具体执行什么
。问题通过别的方法解决了。感谢各位。