我点击左边的树形视图控件,右边有个列表视图,现在在列表视图里面创建了多个列表控件,为什么点击事件只对第一个创建的列表控件有响应,其他创建的列表事件都没反应,求高手指教 谢谢 附上代码
void CRightListView::OnUpdateData(CView* pSender, WPARAM wparam, LPARAM lparam)
{
m_iUpdateTimes++; //创建的列表个数
m_pListCtrl = new CListCtrlEx;
CRect rcChild;
CFrameWnd* pFrameWnd = STATIC_DOWNCAST(CFrameWnd, AfxGetMainWnd()); pFrameWnd-> GetWindowRect(rcChild);
ScreenToClient(rcChild);
rcChild.left += 210;
rcChild.right +=100;
for (int i = 0; i < m_iUpdateTimes; i++)
{
rcChild.bottom += 50;
rcChild.top += 150;
}
m_pListCtrl->CreateEx(WS_CHILD,
WS_VISIBLE |WS_BORDER | LVS_REPORT|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_ONECLICKACTIVATE|LVS_EDITLABELS|LVS_EX_CHECKBOXES,rcChild,this,0);
m_pListCtrl->InsertColumn(0, _T("姓名"), LVCFMT_LEFT , 80); m_pListCtrl->InsertColumn(1, _T("语文"), LVCFMT_LEFT, 60);
}
void CRightListView::OnUpdateData(CView* pSender, WPARAM wparam, LPARAM lparam)
{
m_iUpdateTimes++; //创建的列表个数
m_pListCtrl = new CListCtrlEx;
CRect rcChild;
CFrameWnd* pFrameWnd = STATIC_DOWNCAST(CFrameWnd, AfxGetMainWnd()); pFrameWnd-> GetWindowRect(rcChild);
ScreenToClient(rcChild);
rcChild.left += 210;
rcChild.right +=100;
for (int i = 0; i < m_iUpdateTimes; i++)
{
rcChild.bottom += 50;
rcChild.top += 150;
}
m_pListCtrl->CreateEx(WS_CHILD,
WS_VISIBLE |WS_BORDER | LVS_REPORT|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_ONECLICKACTIVATE|LVS_EDITLABELS|LVS_EX_CHECKBOXES,rcChild,this,0);
m_pListCtrl->InsertColumn(0, _T("姓名"), LVCFMT_LEFT , 80); m_pListCtrl->InsertColumn(1, _T("语文"), LVCFMT_LEFT, 60);
}
我一般消息都通过主MainFrm来处理,所有视图的指针都交给MainFrm来管理。
可以拖各种控件。
sdi Explorer式,左tree,右FormView