怎样在列表控件的列头加一个位图?

解决方案 »

  1.   

    我不知道您說的是什麽控件如果是LIST CONTROL 也就是CListCtrl
    可以這樣
    設定部份:
    CImageList m_icon;
    CListCtrl m_listctrl;
    HICON icon=AfxGetApp()->LoadIcon(IDI_ICON1);//這個地方如果您將CELL作為一個新的類可以把AfxGetApp()強轉
    m_icon.Add(icon);
    m_listctrl.SetImageList(&m_icon,TVSIL_NORMAL);改變時 大概如下:
    列表元素.item.iImage=0;

    列表元素.item.iSelectedImage=1;

    HTREEITEM hRoot=m_listctrl.InsertItem(&列表元素);由于我沒有自己寫一個測試下,如果錯了,麻煩再回復,謝謝
      

  2.   

    m_listMov.Create(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT,
    CRect(104,17,104+290,17+233),GetDlgItem(IDC_CALCTRL) , IDC_LIST_REC);
    m_listMov.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);

    m_listMov.SetImageList(&m_ImageList,LVSIL_SMALL);
    LV_COLUMN lvc;
    lvc.mask=LVCF_TEXT | LVCF_WIDTH | LVCF_FMT;
    lvc.fmt=LVCFMT_CENTER; lvc.pszText = _T("录制日期");
    lvc.cx = 110;
    m_listMov.InsertColumn(1,&lvc);
      

  3.   

    我是想动态地在列表控件CListCtrl 的指定列的列头加一个位图或再去掉位图,还请楼上的和知道的详细说明,我是初学的,尽量详细点,先谢谢了!
    我的原始问题是这样的:我有一个表(用CListCtrl 实现)要打印,有25列,太多,只能有选择的打印一些指定的列。
    这样问题就来了,我怎样表明列被选中?我是用上面的方法实现,可又不知怎样实现;  不知大家可有更好的解决办法?