现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

关于CListCtrl隐藏列的实现

2012-09-11 12:40 工业·编程 ⁄ 共 412字 ⁄ 字号 暂无评论

    因为自己想要实现隐藏,所有去网上查了很多资料,查到的几乎全是对CListCtrl的重载或是将列宽设为0,但当列宽设为0时,有一缺陷,就是用鼠标改变列宽时,可以将设为0宽度的列托出了,而重载CListCtrl感觉好麻烦,因为自己只需要隐藏几列内容,所以就想用设列宽为0,然后想办法,不让修改列宽就OK。

    可当我查看如何禁止修改列宽时,又傻眼了,因为又得对CHeaderCtrl进行重载。

    哎,命苦啊,为了一个小小的功能对类进行重载,感觉实在不划算,由于对点击列表头没有要求,所有想着是否可以截获鼠标对CHeaderCtrl的消息,试了一下果然可行,在PreTranslateMessage中截获对CHeaderCtrl的操作。

    唯一不足就是当鼠标移到CHeaderCtrl上时还是会改变鼠标形状,不过自己想要的功能已经实现就不管那么多啦,O(∩_∩)O哈哈~,与XDJM分享一下,如有不对的地方请XDJM指正

给我留言

留言无头像?