
Listbox怎样一次转移多个数据
就是从选中一个Listbox多个数据项,点击button一次转移到另外一个Listbox中,两个Listbox的都是可以Multiple的,最好给两句代码...
就是从选中一个Listbox多个数据项,点击button一次转移到另外一个Listbox中,两个Listbox的 都是可以Multiple的,最好给两句代码
展开
1个回答
展开全部
有一个思路,不过稍微有点麻烦。
在listbox1中,添加消息响应LBN_SELCHANGE
建立一个全局变量vector<int> TransIndex; //存要转移的所有Item序号
OnSelchangeList1() //中添加
{
UpdateData(TRUE);
m_index1=m_list1.GetCaretIndex(); //需要转移或者取消转移的Item序号
BOOL flag=FALSE; //查找标记,默认找不到
if (TransIndex.size()>=1)
{
//在这里添加代码,查找是否能在TransIndex中已经找到了m_index1
//可以使用find函数,也可以使用for循环查找
//如果在TransIndex中找到了m_index1,也就是以前选过了,那么在TransIndex中删除m_index1,并标记flag=TRUE
}
if(!flag)
{
//表示没有找到,则 TransIndex.push_back(m_index1);
}UpdateData(FALSE);
}
选择完毕后,在botton中添加处理函数,
通过循环,将TransIndex中所记录的Item序号,将对应的Item添加到另外一个listbox
在listbox1中,添加消息响应LBN_SELCHANGE
建立一个全局变量vector<int> TransIndex; //存要转移的所有Item序号
OnSelchangeList1() //中添加
{
UpdateData(TRUE);
m_index1=m_list1.GetCaretIndex(); //需要转移或者取消转移的Item序号
BOOL flag=FALSE; //查找标记,默认找不到
if (TransIndex.size()>=1)
{
//在这里添加代码,查找是否能在TransIndex中已经找到了m_index1
//可以使用find函数,也可以使用for循环查找
//如果在TransIndex中找到了m_index1,也就是以前选过了,那么在TransIndex中删除m_index1,并标记flag=TRUE
}
if(!flag)
{
//表示没有找到,则 TransIndex.push_back(m_index1);
}UpdateData(FALSE);
}
选择完毕后,在botton中添加处理函数,
通过循环,将TransIndex中所记录的Item序号,将对应的Item添加到另外一个listbox
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询