半角与全角输入在listctrl中顺序为什么会发生变化!
Dialog上我用了listctrl控件,dialog上有追加按钮,在半角的情况下,顺序是对的。我采用,
int nIndex = m_WordList.GetItemCount();
AddWordList(nIndex, DatDicInfo.szView, DatDicInfo.szRead, (long)dwType) ;
后面是个添加函数,原型如下:
void CSapiUserDicDlg::AddWordList(int nIndex, char* lpVword, char* lpRword, long lType)
{
char szType[64];
int nView = m_WordList.InsertItem(LVIF_TEXT,nIndex,lpVword,0,0,0,NULL);
m_WordList.SetItem(nView,1,LVIF_TEXT,lpRword,0,0,0,0);
wsprintf(szType, "0x%04x", lType );
m_WordList.SetItem(nView,2,LVIF_TEXT,szType,0,0,0,0);
m_WordList.SetColumnWidth(2,0);
}
追加时,半角切换到全角,list上显示的顺序就变了。开始用半角没有问题,新加的总是在list的最后一行显示,但是后来用全角,顺序就打乱了,有时候新加的就放在了第一个位置,全角下再加一个,位置又是其他的。我一直搞不懂。请各位帮忙了:)