赞
踩
创建控件List Control,并创建变量;
创建双击List Control 控件事件:
- int m_Row;
- int m_Col;
- void PageTest::OnNMDblclkList1Log(NMHDR *pNMHDR, LRESULT *pResult)
- {
- LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
- // TODO: 在此添加控件通知处理程序代码
-
- CRect rc;
- CString strTemp;
- //CString str0;
- NM_LISTVIEW *pNMListView = (NM_LISTVIEW *)pNMHDR;
- m_Row = pNMListView->iItem;//每一行的item从零开始,双击选中行号
- m_Col = pNMListView->iSubItem;//每一行中的列就是SubItem也是从零开始,获得选中列号
- if (m_Row == -1 || m_Col == -1)//点击空白处添加一行,并且设置焦点为最后一行第二列
- {
- m_Row = m_listCtrlLog.GetItemCount();
- strTemp.Format(_T("%d"), m_Row + 1);
- m_listCtrlLog.InsertItem(m_Row, strTemp);
- m_listCtrlLog.SetItemState(m_Row, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED);
- m_listCtrlLog.EnsureVisible(m_Row, FALSE);
- }
- if (m_Col != -1)//选择子项
- {
- m_listCtrlLog.GetSubItemRect(m_Row, m_Col, LVIR_LABEL, rc);
- m_Edit.SetParent(&m_listCtrlLog);
- m_Edit.MoveWindow(rc);
- m_Edit.SetWindowText(m_listCtrlLog.GetItemText(m_Row, m_Col));//设置选中框的数值(由用户输入 )
- //str0 = m_Edit.GetItemText(m_Row, m_Col);//获取选中框中的数据
- m_Edit.ShowWindow(SW_SHOW);//显示在窗口中
- m_Edit.SetFocus();//设置edit焦点
- m_Edit.ShowCaret();//显示光标
- m_Edit.SetSel(-1);
- }
- *pResult = 0;
- }

创建控件Edit,并且创建变量;
创建Edit控件事件,指示控件丢失输入焦点;
- void PageTest::OnEnKillfocusEdit1Input()
- {
- // TODO: 在此添加控件通知处理程序代码
- CString tem;
- m_Edit.GetWindowText(tem); //得到用户输入的新的内容
- m_listCtrlLog.SetItemText(m_Row, m_Col, tem); //设置编辑框的新内容
- m_Edit.ShowWindow(SW_HIDE); //应藏编辑框
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。