如何在CListCtrl中隐藏某列?比如一个CListCtrl有5列
隐藏后3列,在界面上只显示前两列,如何实现?谢谢!!!

解决方案 »

  1.   

    实际上用CListCtrl不能做到隐藏,只有用 CListCtrl::DeleteItem 去掉这些行
    如果又要访问数据又要显示的话建议重载 CListCtrl
      

  2.   

    看错了,没有注意到是列的问题,agree to laiyiling
      

  3.   

    或者直接用两个CListctrl控件,一个多3列,一个少3列,分别隐藏显示他们。
      

  4.   

    用把列宽设置为0的方法,有个问题就是在界面上用鼠标拖动表头改变列的宽度时,这个列又显示出来了,要做到完全的隐藏就做一个CHeaderCtrl的派生类,设定隐藏列变量,处理HDN_BEGINTRACK和HDN_ITEMCHANGING通知,发现当前列为隐藏列则不进行默认处理。
      

  5.   

    使用 laiyiling(陌生人 V2.0■〓Happiness) 说的方法吧。没有其他简单的方法了。
    隐藏其实就是不显示的意思。但它还是存在的。
      

  6.   

    "把列宽设置为0"简便,但不是好方法啊
    "处理HDN_BEGINTRACK和HDN_ITEMCHANGING通知"为上策