我写个CLISTCTRL的派生类CMyListCtrl
但是没有派生CHeaderCtrl
我想现在隐藏CHeaderCtrl,或者在CMyListCtrl上不显示出来,或者使CHeaderCtrl控件的高度为0也行
反正一点,在界面上不显示出来------------------------------------------------------------------------------
附注:请大家说具体方法,别弄些链接过来,谢谢,我要的是有人能真正实现过的东西还有一点要强调的是 :我现在肯定不会自己派生个CHeaderCtrl的子类
具体原因就不必说了
-------------------------------------------------------------------------

解决方案 »

  1.   

    改变CLISTCTRL类型为list,而不用report
      

  2.   

    楼主,CListCtrl有不带headctrl的风格吧。
      

  3.   

    CMyListCtrl::GetHeaderCtrl()->ShowWindow(SW_HIDE);
    在你希望它隐藏的地方
      

  4.   

    TO OYSOFT:我要在这个LIST控件上显示图标,就好像桌面上显示的图标一样所以LIST控件的类型我改成了LVS_ICON  用来显示图标
    我不是很熟悉这个控件  所以不清楚LIST控件为LIST类型的时候,能不能在显示图标
      

  5.   


    我早就试过了呵呵TO OYSOFT:我刚才LIST类型后,还是能显示头控件
      

  6.   

    是这样的
    这LIST控件,有时候希望显示相关的列,但有的时候,就不用这个列(头控件)
    LIST的确能够不带HEADER就是设置成LIST类型,但是我刚才试过了,不行
      

  7.   

    Report风格可以通过m_listctrl.ModifyStyle(LVS_NOCOLUMNHEADER, 0)来隐藏Header,然后调用m_list.ModifyStyle(0, LVS_NOCOLUMNHEADER)可以将它再显示出来
      

  8.   

    TO forimprove :
    先谢谢你我现在已经LIST控件设置成了ICON的风格,想使用控件没有HEADER
    但是,试过了很多方法都不行
    网上找了一大圈,都不行
      

  9.   

    LONG lstytle=GetWindowLong(wndList.m_hWnd,GWL_STYLE);
    lstytle&= ~LVS_TYPEMASK;
    lstytle|= LVS_ICON;
    SetWindowLong(wndList.m_hWnd,GWL_STYLE,lstytle);
      

  10.   

    我改成ICON的风格后,还是能显示出HEADER
      

  11.   

    icon风格本来就没有hearder,你是不是代码哪里有问题?
      

  12.   

    但是我用了之后管事啊,那个Header消失了
      

  13.   

    如果你是自己动态创建的,请不要带LVS_NOCOLUMNHEADER这个风格, 如果你是attach资源的listctrl的话,就在资源里选中NO COLUMN HEADER,
    我试过,楼主这个肯定行的,不要用代码改风格了,要用代码也要用7楼人家贴的,还有report风格这个也能行的。
    ps:改资源的话记得rebuild all下。
      

  14.   

    现在还有个问题想请教大家伙下现在我按照SPRING203的方法,list的类型还是REPORT风格,没有改
    现在怎么在那个风格为REPORT 的LIST上罗列图标
    功能就像桌面上的罗列的图标一样
      

  15.   

    楼主,如果到现在还没有解决问题的话,到我们论坛发个帖,让我们工程师给你解决一下。========================================
    提界面问题,UIPower有问必答!
    界面论坛:http://www.uipower.com/bbs我们有专员负责网友问题的解答,真诚为你服务!
    [如果有很紧急的问题,也可以直接致电我们:021-33130099-806]
      

  16.   

    http://www.codeproject.com/KB/list/CGridListCtrlEx.aspx
    这个就是,注册后就可以下载。
      

  17.   

    想做个类似于OS的桌面的界面只不过,现在的桌面,换成了CLISTCTRL,然后在上面吧公司所有的电脑都用不同图标,列在LIST控件上
      

  18.   

    总算是搞好了但是,现在有个问题,就是LIST从REPORT到ICON变换后
    比如,我开始以REPORT风格的界面显示一批数据,然后,我点视图显示(界面一个按钮),这个时候首先LISTCTRL先从
    REPORT--->ICON进行转换,然后显示图标
    然后图标能显示出来,但有背景(这里说的背景就是上一次显示数据时的界面,图标会在这个界面上绘制)
    我试过了INVALIDATERECT等函数,都没能取消
      

  19.   

    不用。类似的问题我都回过好几次了。lz 你可以把 ListCtrl 设置成 report 风格,照常加上 HeaderCtrl,
    然后可以在 OnLayout 里面把 HeaderCtrl 的高度设置成 0 就可以了。
    LRESULT CxxxHeaderCtrl::OnLayout(WPARAM wParam, LPARAM lParam)
    {
        LRESULT lResult = CHeaderCtrl::DefWindowProc(HDM_LAYOUT, wParam, lParam);    HDLAYOUT& hdLayout = *reinterpret_cast<LPHDLAYOUT>(lParam);
        LPRECT lpRect = hdLayout.prc;
        LPWINDOWPOS lpWindowPos = hdLayout.pwpos;
        lpRect->top = lpWindowPos->cy = 0;    return lResult;
    }
      

  20.   

    具体在什么地方调用啊
    我要实现的很简单,就是就像打开一网页,当你滚动网页,缩放网页的大小,其他窗口遮住等
    网页上的数据都还在
    ---------------
    RedrawWindow什么时候用啊在什么地方用就如我说的那几种情况,应该在什么地方进行调用呢??