CListView && CListCtrl

来源:互联网 发布:mac不知道管理员密码 编辑:程序博客网 时间:2024/06/05 12:20

//设置List Control属性
 CListCtrl* pListCtrl=(CListCtrl*)(GetDlgItem(IDC_LIST1));
    DWORD dwStype=GetWindowLong(pListCtrl->m_hWnd,GWL_STYLE);
    dwStype&=~LVS_TYPEMASK;
    dwStype|=LVS_REPORT;
    SetWindowLong(pListCtrl->m_hWnd,GWL_STYLE,dwStype);

//初始化ListCtrl控制栏(report格式)
 CString str;
 CHeaderCtrl *pHeaderCtrl = m_ListCtrl.GetHeaderCtrl();
 HDITEM hdi;
 hdi.mask = HDI_TEXT | HDI_WIDTH | HDI_FORMAT;
 hdi.cxy = 100;
 hdi.fmt = HDF_STRING | HDF_CENTER;
 for (int i=0;i<3;i++)
 {
  str.Format(TEXT("col %d"),i);
  hdi.pszText = str.GetBuffer(0);
  pHeaderCtrl->InsertItem(i,&hdi);
 }

或者:    pListCtrl->InsertColumn(0,"00",LVCFMT_LEFT , 50);
    pListCtrl->InsertColumn(1,"11",LVCFMT_CENTER , 50);

注:第一个column属性只能设置为Left,设置为Right与Center均无效

补充:这样可以将第一列设置为Center或Right属性:                CString str;
 CHeaderCtrl *pHeaderCtrl = m_ListCtrl.GetHeaderCtrl();
 HDITEM hdi;
 hdi.mask = HDI_TEXT | HDI_WIDTH | HDI_FORMAT;
 hdi.fmt = HDF_STRING | HDF_CENTER;
//插入标题栏第一列
 hdi.cxy = 100;
 str.Format(TEXT("日期"));
 hdi.pszText = str.GetBuffer(0);
 pHeaderCtrl->InsertItem(0,&hdi);

 //插入一列并设置列宽
 m_ListCtrl.InsertColumn(2,_T("New Col"));
 m_ListCtrl.SetColumnWidth(2,100);

 //设置扩展属性
 DWORD dw = pListCtrl->GetExStyle();
 dw |= LVS_EX_GRIDLINES;  //有网格线
 dw |= LVS_EX_FULLROWSELECT; //选择整行
 dw &= ~LVS_EX_CHECKBOXES; //去掉Check box
 pListCtrl->SetExtendedStyle(dw);

 

 

原创粉丝点击