MFC CListCtrl 的使用

获取表格控件指针、设置样式
CListCtrl* lst = (CListCtrl*)GetDlgItem(IDC_LSTCTl);
lst->ModifyStyle( 0, LVS_REPORT );               // 报表模式 
lst->SetExtendedStyle(lst->GetExtendedStyle()
| LVS_EX_GRIDLINES
| LVS_EX_FULLROWSELECT); 


lst->InsertColumn(0,_T("第一列")); 
lst->InsertColumn(1,_T("第二列")); 


//设置列


CRect rect;
lst->GetClientRect(rect); //获得当前客户区信息
lst->SetColumnWidth(0, rect.Width() / 2); //设置列的宽度。 
lst->SetColumnWidth(1, rect.Width() / 2); 




/插入几行


lst->InsertItem(0, _T("1.1")); 
lst->SetItemText(0, 1, _T("2.1")); 


lst->InsertItem(1, _T("1.2")); 
lst->SetItemText(1, 1, _T("2.2")); 


lst->InsertItem(2, _T("1.3")); 
lst->SetItemText(2, 1, _T("2.3")); 


/删除


lst->DeleteItem(1);


遍历,取第一列的数据


CString str("");
int lineCount = lst->GetItemCount();
int i = 0;
for(i = 0;i < lineCount;i ++){
str.Append(lst->GetItemText(i,0) + _T(" , "));
}

AfxMessageBox(str);


=======================


设置样式

DWORD SetExtendedStyle(


  DWORD dwNewStyle );


  函数功能设置CListCtrl的扩展样式


  dwNewStyle指定的扩展样式


  LVS_EX_GRIDLINES //绘制表格


  LVS_EX_SUBITEMIMAGES


  LVS_EX_CHECKBOXES //带复选框


  LVS_EX_TRACKSELECT //自动换行


  LVS_EX_HEADERDRAGDROP


  LVS_EX_FULLROWSELECT //选择整行


  LVS_EX_ONECLICKACTIVATE//单击激活


  LVS_EX_TWOCLICKACTIVATE//双击激活


  LVS_EX_FLATSB//扁平滚动条


  LVS_EX_REGIONAL


  LVS_EX_INFOTIP


  LVS_EX_UNDERLINEHOT


  LVS_EX_UNDERLINECOLD


  LVS_EX_MULTIWORKAREAS//多工作区


例子:


BOOL COnlineDlg::OnInitDialog()
{
CDialog::OnInitDialog();


m_OnlineList.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_CHECKBOXES | LVS_EX_FULLROWSELECT);


m_OnlineList.InsertColumn(0,"IP地址",NULL,130,-1);
m_OnlineList.InsertColumn(1,"语言/区域",LVCFMT_CENTER,80,-1);
m_OnlineList.InsertColumn(2,"计算机名称",NULL,120,-1);
m_OnlineList.InsertColumn(3,"系统类型",NULL,100,-1);
m_OnlineList.InsertColumn(4,"内存(MB)",NULL,80,1);
m_OnlineList.InsertColumn(5,"CPU大小(MHz)",NULL,80,1);
m_OnlineList.InsertColumn(6,"软件版本",NULL,80,1);
m_OnlineList.InsertColumn(7,"状态",NULL,300,-1);
m_ImageOnlinelist.Create(16,16,ILC_COLOR32|ILC_MASK,2,2);
HICON hIcon0 = ::LoadIcon (AfxGetResourceHandle(), MAKEINTRESOURCE(IDI_ICON_PC));
m_ImageOnlinelist.Add(hIcon0);
m_OnlineList.SetImageList(&m_ImageOnlinelist,LVSIL_SMALL);//在线列表框添加图标



===============删除==============




删除整行选中的===============
// int count = m_lst->GetSelectedCount();
// if(count > 0){
// POSITION pos = m_lst->GetFirstSelectedItemPosition();
//while (pos != NULL)
//{
// int delId = m_lst->GetNextSelectedItem(pos);
// m_lst->DeleteItem(delId);
//}
// }




/删除CHECKBOX选中的项============
for(int i = 0; i<m_lst->GetItemCount(); i++)
{
if(m_lst->GetCheck(i))
{
m_lst->DeleteItem(i);
i--;
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值