首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

怎的给listctrl的scroll bar换肤

2012-08-03 
怎样给listctrl的scroll bar换肤我们知道,通过custom_draw或者ower_draw可以美化列表控件里面所显示的条目

怎样给listctrl的scroll bar换肤

我们知道,通过custom_draw或者ower_draw可以美化列表控件里面所显示的条目,比如可以加上特殊背景等,但是如果想给其边框滚动条换上其他样子就不那么容易做到了,很容易想到的方法是,找到他的窗口句柄,然后作子类化,但遗憾的是,不管你通过什么方式,你都无法找到它的句柄。那么只有通过第二种方式了,直接把它隐藏掉,再换上自己的滚动条。

你可能想问,句柄都找不到,怎么隐藏它?别着急,有办法,微软提供了3个api来操作这个固有的滚动条:

InitializeFlatSB:

FlatSB_EnableScrollBar:

FlatSB_ShowScrollBar:

这样用:

InitializeFlatSB(m_hWnd);
 FlatSB_EnableScrollBar(m_hWnd, SB_BOTH, ESB_DISABLE_BOTH);
 FlatSB_ShowScrollBar(m_hWnd,SB_BOTH,FALSE);

 

这里m_hWnd是列表框控件的窗口句柄,这样你就把系统带的滚动条隐藏掉了,接下来换上自己的滚动条,达到滚动条换肤的功能

 

热点排行