和VB差不多,先把ListView的控件Insert到工程里面,然后由CListView类定义实例即可。

解决方案 »

  1.   

    classwizard给我加了一个新类叫做CListView1,然后还有好多乱七八糟的类,我现在想给这个listview中添加一条记录,按照vb的思想好像也不行,最好给个例子看看
      

  2.   

    我的一段代码,报表风格:(部分)
    对话框初始化中:
    m_List.InsertColumn(0,"用户",LVCFMT_LEFT,60);
    m_List.InsertColumn(1,"IP",LVCFMT_LEFT,60);
    m_List.InsertColumn(2,"开始时间",LVCFMT_LEFT,60);
    m_List.InsertColumn(3,"请求站点",LVCFMT_LEFT,60);
    ///////////////////////////////////////////////////
    DWORD dwStyle = GetWindowLong(m_List.GetSafeHwnd(),GWL_STYLE);
    dwStyle &= ~LVS_TYPEMASK;
    dwStyle |= LVS_REPORT;
    SetWindowLong(m_List.GetSafeHwnd(),GWL_STYLE,dwStyle);
    SetRedraw(TRUE);
    Invalidate();
    刷新函数中: m_List.DeleteAllItems();
    POSITION pos = m_ptrlist.GetHeadPosition();
    while(pos)
    {
    CInfo* pInfo = (CInfo*)m_ptrlist.GetNext(pos);
    m_List.InsertItem(0,pInfo->GetCustomerName());
    m_List.SetItemText(0,1,pInfo->GetCustomerAdd());
    CTime time(pInfo->GetBeginTime());
    CString strTime = time.Format("%H:%M:%S");
    m_List.SetItemText(0,2,strTime);
    CString str;
    str.Format("%s",pInfo->GetStation());
    m_List.SetItemText(0,3,str);
    }
      

  3.   

    谢谢,你用的是CListCtrl类吧?如果用这个类的话,能不能加网格线?我好像没有发现能够加网格线,只有一个windows控件,就是microsoft listview control 6.0(sp4)可以加,不过我不会在vc里面使用那个控件,vb里面倒是会用
      

  4.   

    加网格线很简单的,用
    ListView_SetExtendedStyle( hwnd, LVS_EX_GRIDLINES );
      

  5.   

    非常感谢,我试试看,上次看到《电脑编程技巧与维护》上面有篇文章专门讲扩展CListCtrl类的一篇文章,单独扩展了一个类出来,我正在看那个类的代码了,呵呵,看来现在不用看了。