List Control 已经显示了很多行。选中其中的一行,触发鼠标点击事件。具体代码如下:
我把源代码帖出,大家看一下。 void CDBAccessDlg::OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult)
{
//-- Get the number of selected rows
int nSelRows = m_ListControl.GetSelectedCount(); // 用GetSelectedCount()方法,返回0.
//int nSelRows = m_ListControl.GetSelectionMark(); //用GetSelectionMark()方法,返回-1.
if(!nSelRows) //-- If there are no rows selected,jump out here
return; AfxMessageBox(_T("One JOB was selected!"));
//-- Get the position of the first selected row
POSITION pos =m_ListControl.GetFirstSelectedItemPosition(); //-- Get the index of next selected row
int i = m_ListControl.GetNextSelectedItem(pos); TRACE("First Item %d\n",i); if (i != -1) //-- Execute this loop as long as GetNextSelectedItem() returns -1 m_selectJobID = m_ListControl.GetItemText(i, 0);
return; *pResult = 0;
}
我把源代码帖出,大家看一下。 void CDBAccessDlg::OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult)
{
//-- Get the number of selected rows
int nSelRows = m_ListControl.GetSelectedCount(); // 用GetSelectedCount()方法,返回0.
//int nSelRows = m_ListControl.GetSelectionMark(); //用GetSelectionMark()方法,返回-1.
if(!nSelRows) //-- If there are no rows selected,jump out here
return; AfxMessageBox(_T("One JOB was selected!"));
//-- Get the position of the first selected row
POSITION pos =m_ListControl.GetFirstSelectedItemPosition(); //-- Get the index of next selected row
int i = m_ListControl.GetNextSelectedItem(pos); TRACE("First Item %d\n",i); if (i != -1) //-- Execute this loop as long as GetNextSelectedItem() returns -1 m_selectJobID = m_ListControl.GetItemText(i, 0);
return; *pResult = 0;
}
解决方案 »
- 我用odbc api 操作mssql数据库的时候 执行语句经常超时然后卡住不动了 如何设置超时时间?谢谢
- 如何配出一些有比较大区分度的颜色
- ADO 数据库连接出错!
- 关于数据类型转换的问题,该怎么做,用什么函数?谢谢了!
- 怎样用代码创建一个文件夹?
- 刚才在VC中使用Word的VBA,其中的VBA有一段:Selection.Delete Unit:=wdCharacter, Count:=1,后来在网上搜索 wdCharacter 才知道等于 00
- 100分超级解霸里的背景模式播放!!!
- 高分悬赏哦!请问VC++要学到什么样程度才可以出来混哦!
- 请教:你一般用Visual C++进行哪方面程序的开发?
- 这个问题或许对你来说不难!
- 急!TCP的心跳包的问题
- 对话框如何获取CListCtrl里面的滚动条事件!
至于多方选中,要先设置可以多行选中的style的
NOTIFY_HANDLER(IDC_KLIST,LVN_ITEMACTIVATE,OnList)
下面的就不写了,消息映射 在ONLIST函数体里面如下处理
m_currentitem = m_list.GetNextItem(-1,LVNI_SELECTED|LVNI_FOCUSED);
m_list.GetItemText(m_currentitem,1,m_nbcheck);
m_list.SetItemText(m_currentitem,1,_T("”)"));
我只是改了个名,你可以做其它操作了