在ATL开发的控件要使用WTL该怎么办
1个回答
展开全部
首先WTL里面好像没有CListCtrl,有一个CListViewCtrl。每一行应该有一个标识号,在鼠标点击消息响应函数里面:先获取鼠标点击位置的标识号GetSelectionMark(),然后用Switch选择,如下程序。你可以参考其实现的思想,其中m_listView是一个CListViewCtrl的对象,CListViewCtrl控件有一个鼠标点击消息NOTIFY_HANDLER(IDC_LIST1, NM_DBLCLK, OnNmDblclkList1),然后在OnNmDblclkList1里面添加如下代码
int cursel=m_listview.GetSelectionMark(); //获取双击节点的标识号
if(cursel==-1)
return 0;
switch(cursel)
{
case 0:
{
MessageBox(_T("Hello1"));
m_listview.SetSelectionMark(-1);
break;
}
case 1:
{
MessageBox(_T("Hello2"));
m_listview.SetSelectionMark(-1);
break;
}
case 2:
{
MessageBox(_T("Hello3"));
m_listview.SetSelectionMark(-1);
break;
}
case 3:
{
MessageBox(_T("Hello4"));
m_listview.SetSelectionMark(-1);
break;
}
int cursel=m_listview.GetSelectionMark(); //获取双击节点的标识号
if(cursel==-1)
return 0;
switch(cursel)
{
case 0:
{
MessageBox(_T("Hello1"));
m_listview.SetSelectionMark(-1);
break;
}
case 1:
{
MessageBox(_T("Hello2"));
m_listview.SetSelectionMark(-1);
break;
}
case 2:
{
MessageBox(_T("Hello3"));
m_listview.SetSelectionMark(-1);
break;
}
case 3:
{
MessageBox(_T("Hello4"));
m_listview.SetSelectionMark(-1);
break;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询