这是一个CListCtrl,我通过 m_list.InsertItem(0,temp);
rec.GetFieldValue("user_name",un);
m_list.SetItemText(0,1,temp);
rec.GetFieldValue("user_password",up);
m_list.SetItemText(0,2,temp);
rec.GetFieldValue("user_memo",um);
m_list.SetItemText(0,3,temp);在里面添加了一些内容
现在我想实现这样一个效果,双击某一项,那一项就变成可以编辑的,可以进行修改。比如说,我双击那个Angeling,然后光标就在那里面了,可以修改它的内容。至于怎么写回去,这个应该很简单了,用Get...的应该就可以,关键在于我没办法实现:双击它,它就可编辑,这一个功能……求助!
rec.GetFieldValue("user_name",un);
m_list.SetItemText(0,1,temp);
rec.GetFieldValue("user_password",up);
m_list.SetItemText(0,2,temp);
rec.GetFieldValue("user_memo",um);
m_list.SetItemText(0,3,temp);在里面添加了一些内容
现在我想实现这样一个效果,双击某一项,那一项就变成可以编辑的,可以进行修改。比如说,我双击那个Angeling,然后光标就在那里面了,可以修改它的内容。至于怎么写回去,这个应该很简单了,用Get...的应该就可以,关键在于我没办法实现:双击它,它就可编辑,这一个功能……求助!
{
m_Edit.Create(WS_CHILD|WS_CLIPSIBLINGS|WS_EX_TOOLWINDOW|WS_BORDER,
CRect(0,40,10,50),this,ID_EDIT);
m_Edit.SetParent(this);
CListCtrl::PreSubclassWindow();
}void CMyList::OnLButtonDblClk(UINT nFlags, CPoint point)
{
LVHITTESTINFO lvhti; lvhti.pt = point;
lvhti.flags=LVHT_ONITEMLABEL;
this->SubItemHitTest(&lvhti);
int nItem = lvhti.iItem;
int nSubItem = lvhti.iSubItem; if (lvhti.flags & LVHT_ONITEMLABEL)
{
if (nSubItem == 1)
{
CRect rectCell;
this->GetSubItemRect(nItem, nSubItem, LVIR_LABEL,rectCell);
m_Edit.m_nItem = nItem;
m_Edit.m_nSubItem = nSubItem;
m_Edit.m_strText = this->GetItemText(nItem, nSubItem);
m_Edit.MoveWindow(&rectCell, TRUE);
m_Edit.SetFocus();
m_Edit.SetSel(0, -1);
m_Edit.ShowWindow(SW_SHOW);
}
}
CListCtrl::OnLButtonDblClk(nFlags, point);
} 单击时实现编辑框