ListCtrl设置为report风格怎样确定某一行被选中
解决方案 »
- 在VS2010和VS2012中自动生成的MFC程序,编译时都出现同一个错误
- 奇怪!为什么程序在某处打断点时运行的结果正常,不在该处打断点时运行的结果就不正常了?
- 求助:VC2010
- 多了个星,散分
- 在VC中如何计算一个算法使用时间
- 向用VC与mysql数据库编程的高手求助(在线等待)
- 如何用MCI命令同时播放两个声音文件(两块声卡)?
- MFC自带的例子SimplyImage有谁研究过?
- 很奇怪,多线程程序中,当主线程收到辅助线程发送的消息处理完数据调用MessageBox时程序死机
- 我用ADO从数据库中取出的DateTime类型的数据怎么放到CTime类型的变量中去呢?
- 删除文件时遇到的问题
- 请教:静态创建窗口问题(2)
////////////////////////////////////////////////////////////////int nIndex = m_ListCtrl.GetNextItem( -1 , LVNI_SELECTED );if ( nIndex == -1 )
{
MessageBox("当前没有选中的记录。");
return;
}////////////////////////////////////////////////////////////////
if (NULL == pos)
{
return;
}
int item = m_ctrlList.GetNextSelectedItem(pos);
CString tmp;
for(int i=0; i<m_user_LIST.GetItemCount(); i++)
{
if(m_user_LIST.GetItemState(i, LVIS_SELECTED)==LVIS_SELECTED)
{
tmp=m_user_LIST.GetItemText(i,0); //取得号码
break;
}
}通过循环判断获取选中行的第一列的数据
CString str;
for(int i=0; i<m_list.GetItemCount(); i++)
{
if( m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED )
{
str.Format(_T("选中了第%d行"), i);
AfxMessageBox(str);
}
}
方法二:
POSITION pos = m_list.GetFirstSelectedItemPosition();
if (pos == NULL)
TRACE0("No items were selected!\n");
else
{
while (pos)
{
int nItem = m_list.GetNextSelectedItem(pos);
TRACE1("Item %d was selected!\n", nItem);
// you could do your own processing on nItem here
}
}