VS2022 MFC List Control控件学习记录1

本文介绍了如何在VS2022环境下使用MFC的ListControl控件,包括设置全行选中和栅格风格,插入列和数据,以及实现右键删除行的功能。

VS2022 MFC  List Control控件学习记录1

打开视图-工具箱 

拖动控件到窗体

 设置视图

BOOL CLISTCDlg::OnInitDialog()  添加代码


    // TODO: 在此添加额外的初始化代码
    CRect rect;

    // 获取编程语言列表视图控件的位置和大小   
    m_List.GetClientRect(&rect);
    m_List.SetExtendedStyle(m_List.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);//
    // 为列表视图控件添加全行选中和栅格风格 
   //m_List.InsertColumn(0, _T("ID"), LVCFMT_CENTER, rect.Width() /4, 0);
    m_List.InsertColumn(0, _T("ID"), LVCFMT_CENTER, 50, 0);
    m_List.InsertColumn(1, _T("公网IP"), LVCFMT_CENTER, 100, 1);
    m_List.InsertColumn(2, _T("内网IP"), LVCFMT_CENTER, 100, 2);
    m_List.InsertColumn(3,_T("操作系统"), LVCFMT_CENTER, 150,3);
    m_List.InsertColumn(4, _T("计算机名"), LVCFMT_CENTER, 150, 4);
    m_List.InsertColumn(5, _T("CPU"), LVCFMT_CENTER, 120, 5);
    m_List.InsertColumn(6, _T("Ping"), LVCFMT_CENTER, 100, 6);
    m_List.InsertColumn(7, _T("备注"), LVCFMT_CENTER, 100, 7);

    //m_Errorlist.InsertItem(0, "caption");
    //m_ListCtr.SetItemText(0,1,"content");
    
    m_List.InsertItem(0, _T("1"));
    m_List.SetItemText(0, 1, _T("45.25.165.17"));
    m_List.SetItemText(0, 2, _T("192.168.1.25"));
    m_List.SetItemText(0, 3, _T("Windows 11"));
    m_List.SetItemText(0, 4, _T("NET CSDN"));
    m_List.SetItemText(0, 5, _T("AMD"));
    m_List.SetItemText(0, 6, _T("162"));
    m_List.SetItemText(0, 7, _T("等待标记"));

右键点击删除


void CLISTCDlg::OnNMRClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
    LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
    // TODO: 在此添加控件通知处理程序代码

    CString TEX;
    
    POSITION pos = m_List.GetFirstSelectedItemPosition();
    int nItem;
    nItem = m_List.GetNextSelectedItem(pos)+1;//nItem即是选中行的序号
    CString str;
    str.Format(_T("你选中了第%d行"), nItem);
    LPCTSTR  pStr = LPCTSTR(str);

    MessageBox(str, L"ni xuan zhong le", MB_OK);

    MessageBox(str, L"即将删除该行", MB_OK);

    m_List.DeleteItem(nItem-1);//删除行


    *pResult = 0;
}
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值