您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法

解决方案 »

  1.   

    获取此列表中选中项总数,获得列数,二层循环取得项目的所有文字(以及其他属性),并插入到另外一个列表,设置对应的文字。如对话框有两个控件ID分别为IDC_LIST1和IDC_LIST2,现要把IDC_LIST1选中项“移动”到IDC_LIST1中,大概举例如下:
    CListCtrl *psrcList = GetDlgItem(IDC_LIST1);
    CListCtrl *pdstList = GetDlgItem(IDC_LIST2);
    UINT uSelCount = psrcList.GetSelectedCount();
    if (uSelCount > 0)
    {
        int nItem = -1;
        int nCol = psrcList->GetHeaderCtrl->GetItemCount();
        for (UINT i = 0; i < uSelCount; i++)
        {
            nItem = psrcList->GetNextItem(nItem, LVNI_SELECTED);
            LPCTSTR pszItem = (LPCTSTR)psrcList->GetItemText(nItem, 0);
            int index = pdstList->InsertItem(pdstList->GetItemCount(), pszText);
            for (UINT j = 1; j < nCol; j++)
            {
                LPCTSTR pszSubItem = (LPCTSTR)psrcList->GetItemText(nItem, j);
                pdstList->SetItemText(index, pszSubItem);
            }
            psrcList->DeleteItem(nItem);
        }
    }
    这个只是设置了文字,并没有对其他的如图标、对齐方式、数据、分组等信息进行拷贝。