菜单和工具栏的颜色

miyimei 2008-02-15 06:05:34
现在vc#2005做的程序默认的是蓝色的,我想改成灰色的,就像vc#2005那样的
如果把工具栏的BackColor改成灰色的话,就失去了立体感,成了平板的了;菜单的backColor改成灰色,但是点击后弹出的仍然没有变
我就是想改成跟vc#2005一样的
...全文
520 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cacar2008 2008-09-21
  • 打赏
  • 举报
回复
ProfessionalColorTable
miyimei 2008-02-15
  • 打赏
  • 举报
回复
贴图反而不方便,1楼的方法,很好很强大,是比较正规的方法,使用ProfessionalColorTable的派生类,可以为菜单、工具栏、状态栏、按钮等诸多元素自定义颜色,包括颜色的渐变,很快很方便,很靓很美观
春天的气息 2008-02-15
  • 打赏
  • 举报
回复
用贴图吧,会更快捷方便的.
miyimei 2008-02-15
  • 打赏
  • 举报
回复
1楼你牛,分全给你了,爽快些
shinaterry 2008-02-15
  • 打赏
  • 举报
回复
^o^ 或者用贴图方式来改变界面样式...
sh1618 2008-02-15
  • 打赏
  • 举报
回复
学习
lalac 2008-02-15
  • 打赏
  • 举报
回复
lz那样设置BackColor是没有用的,要使用ToolStripProfessionalRenderer和ProfessionalColorTable才可以,参考下面的示例吧:

如何:自定义ToolStrip应用程序中的颜色

通过使用ToolStripProfessionalRenderer类以使用自定义颜色,可以自定义ToolStrip的外观。

示例
下面的代码示例演示如何使用ToolStripProfessionalRenderer在运行时定义自定义颜色。

// This code example demonstrates how to use a ProfessionalRenderer
// to define custom professional colors at runtime.
class Form1 : Form
{
public Form1()
{
// Create a new ToolStrip control.
ToolStrip ts = new ToolStrip();

// Populate the ToolStrip control.
ts.Items.Add("Apples");
ts.Items.Add("Oranges");
ts.Items.Add("Pears");
ts.Items.Add(
"Change Colors",
null,
new EventHandler(ChangeColors_Click));

// Create a new MenuStrip.
MenuStrip ms = new MenuStrip();

// Dock the MenuStrip control to the top of the form.
ms.Dock = DockStyle.Top;

// Add the top-level menu items.
ms.Items.Add("File");
ms.Items.Add("Edit");
ms.Items.Add("View");
ms.Items.Add("Window");

// Add the ToolStrip to Controls collection.
this.Controls.Add(ts);

// Add the MenuStrip control last.
// This is important for correct placement in the z-order.
this.Controls.Add(ms);
}

// This event handler is invoked when the "Change colors"
// ToolStripItem is clicked. It assigns the Renderer
// property for the ToolStrip control.
void ChangeColors_Click(object sender, EventArgs e)
{
ToolStripManager.Renderer =
new ToolStripProfessionalRenderer(new CustomProfessionalColors());
}
}

// This class defines the gradient colors for
// the MenuStrip and the ToolStrip.
class CustomProfessionalColors : ProfessionalColorTable
{
public override Color ToolStripGradientBegin
{ get { return Color.BlueViolet; } }

public override Color ToolStripGradientMiddle
{ get { return Color.CadetBlue; } }

public override Color ToolStripGradientEnd
{ get { return Color.CornflowerBlue; } }

public override Color MenuStripGradientBegin
{ get { return Color.Salmon; } }

public override Color MenuStripGradientEnd
{ get { return Color.OrangeRed; } }
}

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧