我在对话框里添加了一个列表控件,想显示3列,现在的情况是不能显示表头信息,代码如下,请问该怎么改代码?
BOOL CFileRequestReplyDlg2::OnInitDialog() 
{
    CDialog::OnInitDialog();

    // TODO: Add extra initialization here    LVCOLUMN lvcol;
    
    lvcol.mask=LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH;
    lvcol.fmt=LVCFMT_CENTER;  //居中
    lvcol.pszText="第一列";
    lvcol.iSubItem=0; 
    lvcol.cx=70;
 
    m_filerequestreply.InsertColumn(0,&lvcol);

    lvcol.iSubItem=1;
    lvcol.pszText="第二列";
    m_filerequestreply.InsertColumn(1,&lvcol);    lvcol.iSubItem=2;
    lvcol.pszText="第三列";
    m_filerequestreply.InsertColumn(2,&lvcol);    return TRUE;  // return TRUE unless you set the focus to a control
              // EXCEPTION: OCX Property Pages should return FALSE
}急用,多谢!

解决方案 »

  1.   

    void CTLearnPListDlg::AddHeaders(CListCtrl * pListCtrl)
    {
    TCHAR rgtsz[2][10] = {_T("任务名称"), 
    _T("任务状态")};

    LV_COLUMN lvcolumn;
    CRect rect;
    pListCtrl->GetWindowRect(&rect);
    for(int i=0;i<2;i++)
    {
    lvcolumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT 
    | LVCF_WIDTH | LVCF_ORDER;
    lvcolumn.fmt = LVCFMT_LEFT;
    lvcolumn.pszText = rgtsz[i];
    lvcolumn.iSubItem = i;
    lvcolumn.iOrder = i;
    if(i==0)
    {
    lvcolumn.cx = rect.Width()*3/5 ; 
    }
    else
    lvcolumn.cx = rect.Width()*2/5;
    pListCtrl->InsertColumn(i, &lvcolumn);
    }
    }拷一段我写的,你去看看吧