C#对于菜单栏与工具栏都提供了统一的背景色,形状的渲染类,即ToolStripRenderer类,同时根据不同的情形,提供了多个继承类,分别是ToolStripProfessionalRender,ToolStripSystemRenderer,本片文章将通过继承ToolStripProfessionalRender来实现菜单与工具栏的自定义
1.通过VS2008创建一个C#类,并命名为CustomProfessionalRenderer.cs
2.在CustomProfessionalRenderer.cs文件中加入以下引用
3.定义CustomProfessionalRenderer类的控件颜色的全局变量
4.定义CustomProfessionalRenderer类的构造函数
5.重写绘制菜单栏和工具栏背景色的函数,如下所示
6.重写绘制菜单栏和工具栏边框的函数,如下所示
7.当菜单上存在多级目录时,会显示相应的小箭头,想修改,请重写如下函数
8.重写子菜单的渲染函数,如下所示
9.重写菜单上分割线的函数,如下所示
10.重写菜单上左边放置图片的区域,如下所示
11.重写绘制工具栏上BUTTON按钮背景色的函数,如下所示
12.另在代码上加入以下函数
到此为止,已经写好了菜单与工具栏的渲染类,下面就是如何调用了
1.菜单栏的调用
2.工具栏的调用
按照上述方式使用之后,大家可以看到如下的菜单/工具栏界面
怎么样,效果还不错吧?