[原创] 自定义控件——SideBar (Office2007效果)【附源码+注释】
[bo]效果如上图[/bo]
[bo]下面是这个版本的改进版效果图,增加了滚动条,解决了子按钮过多的问题,没源码,需要用这个控件的,可以在现在代码基础上稍微修改一下就是了,加油![/bo]
【CrystalSideaBr教程】CrystalSideBar[bo][un]控件用法示例程序[/un][/bo]:https://bbs.bccn.net/thread-244733-1-2.html
仿[bo]DevComponents公司的SideBar控件[/bo]的Office2007效果
实现了除“子按钮集合上下拖动”、“子按钮拖放”这2个功能以外的所有仿制功能。
[bo][un]上面2个缺陷目前还在改进中,如果大家有兴趣,也可以把源码拿去修改,改好了传上来交流[/un][/bo]
源码见附件!
[bo]===============原理简述================[/bo]
SideBar继承自panel,但是是自定义的设计器。
修改了DOCK的范围,这样在顶端留出一点空间,鼠标可以点击选择它
增加了3个事务:增加导航条,删除导航条,增加子按钮
导航条继承自panel,也是自定义的设计器。
修改了DOCK的范围,这样才可以在最上面画出一个按钮出来。
在设计器重写了GetHitResult(),可以在设计器里面传递鼠标事件。
增加了4个属性,大家在属性里面的“杂项”可以看到
分别是:主按钮文字,文字对齐方式,主按钮图片,图片对齐方式
每增加或者删除一个导航条,SideBar中的导航条集合将重新排列。
每点击一个导航条的头按钮,SideBar中的导航条集合将重新排列。
子按钮用的是我以前做的水晶按钮,以前在论坛上发过了。
它可以实现与导航条颜色融为一体。
显示效果与导航条的头按钮相似。
[[it] 本帖最后由 乖老鼠 于 2008-11-18 12:16 编辑 [/it]]
CrystalSideBar_MouseBoy.rar
(68.24 KB)