void CReadWordDlg::OnBnClickedMoveback() //点击回退按钮
{
// TODO: 在此添加控件通知处理程序代码
int nIndex;
nIndex = ((CListCtrl*)GetDlgItem(IDC_LISTVIEW))->GetNextItem(-1,LVNI_SELECTED);          //获取IDC_LISTVIEW控件选中的 while (nIndex != -1)
{
CString sDataA = ((CListCtrl*)GetDlgItem(IDC_LISTVIEW))->GetItemText(nIndex,0); //获得字符串
((CListCtrl*)GetDlgItem(IDC_LISTVIEW))->DeleteItem(nIndex);         //删除IDC_LISTVIEW字符串
((CListCtrl*)GetDlgItem(IDC_SOURCECTRL))->InsertItem(0,sDataA);         //插回数据到IDC_SOURCECTRL
nIndex = ((CListCtrl*)GetDlgItem(IDC_SOURCECTRL))->GetNextItem(nIndex,LVNI_SELECTED);  //进入下一个A中选中的项
}
这个按钮的事件响应,点击IDC_LISTVIEW,点击的条目删除,回退插入到IDC_SOURCECTRL...请问,
1、我点击了IDC_LISTVIEW的第5个条目,那么删除后,原来第6往前成为第5条目,那么如何让新第5被选上的状态,那么我继而继续点击这个按钮,就第5,第5,第5,第5一直响应操作下去?2、InsertItem的新数据,0的话只能在前面安置了,如果我想往最后安置插入,是不是必须得获取到总共有多少个条目,然后+1确定位置再insert? 有没有简便方法?3、如果IDC_LISTVIEW是不同的字词,MFC有没有现成的操作方式,让里面的字词条目,按升序,降序排序?(我的意思是A-Z,或者字符长短)
还是得老老实实的自己把数据抽出来,用算法排完,再insert回去?