MFC的list control控件,如何得到某一行某列的字符串内容

MFC的list control控件,如何得到某一行某列的字符串内容,第1张

int i=m_listGetSelectionMark();//获得选 中行的行标

CString s=m_listGetItemText(i,j);i是行,j是列。m_list是个list control 对象

可以做到的,做一个ListCtrl的派生类CMyListCtrl,表中的数据是从数据库得到的,你自己添加数据吧.

void CMyListCtrl::OnMouseMove(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

this->SetFocus();

UINT uFlags;

int nItem = HitTest(point, &uFlags);

if (uFlags & LVHT_ONITEMICON ){

this->SetHotItem(nItem);//有这句就可以实现列表中的字体变色了

}

CListCtrl::OnMouseMove(nFlags, point);

}

在其它类,比如(CListCtrlTestDlg)的OnInitDialog加入以下代码,在CListCtrlTestDlg头文件中加入#include "MyListCtrlh",当前使用的列表控件对象是:CMyListCtrl m_list;

BOOL CListCtrlTestDlg::OnInitDialog()

{

CDialog::OnInitDialog();

m_listSetExtendedStyl(LVS_EX_FULLROWSELECT|LVS_EX_HEADERDRAGDROP|LVS_EX_GRIDLINES|LVS_EX_FLATSB);

m_listSetTextColor(RGB(200, 0, 0));//列表中的字体为红色

m_listInsertColumn(0, "员工编号");

m_listInsertColumn(1, "姓名");

m_listInsertColumn(2, "性别");

m_listInsertColumn(3, "年龄");

m_listInsertColumn(4, "个人手机");

m_listInsertColumn(5, "联系电话");

m_listInsertColumn(6, "联系地址");

m_listInsertColumn(7, "工作职位");

for(int j = 0; j < 8; j++){

m_listSetColumnWidth(j, LVSCW_AUTOSIZE);

m_listSetColumnWidth(j, LVSCW_AUTOSIZE_USEHEADER);

}

CString sql = "select from yginfo";

RefrushList(sql);//数据库访问函数,略...

return TRUE; // return TRUE unless you set the focus to a control

}

POSITION pos = m_ctrlJTCZ(你的控件名字)->GetFirstSelectedItemPosition();

if (pos==NULL)

{ MessageBox("请选择一行!");

return;

}

if (IDNO==MessageBox("确认要删除吗","删除提示",MB_YESNO))

{

return;

}

int nIndex = m_ctrlJTCZ->GetNextSelectedItem(pos);

m_ctrlJTCZ->DeleteItem(nIndex);

然后再执行delete语句就可以了

以上就是关于MFC的list control控件,如何得到某一行某列的字符串内容全部的内容,包括:MFC的list control控件,如何得到某一行某列的字符串内容、vc 鼠标经过listctrl自动选中某行、MFC中怎么删除CListCtrl Checkbox选中一行或多行数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9773985.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存