【问题标题】:Is it possible to take control on button paint process in WinForms?是否可以控制 WinForms 中的按钮绘制过程?
【发布时间】:2016-12-12 07:56:11
【问题描述】:

我想自己画按钮。 我可以只使用标准的 .NET 类(而不是 winapi 导入)吗?

【问题讨论】:

  • 是的,这是可能的。您的具体要求是什么?
  • @RezaAghaei,我需要更改默认颜色并使按钮更平坦(例如在 vgui 和所有源游戏中)。
  • 对于这样的要求,您不需要自定义绘画。例如,您可以将FlatStyle 设置为Flat
  • 而制作这样的按钮? link 平面和 3d。或 3d 和平面。
  • 您可以自己绘制按钮,查看Animated Glow Effect for Button3d Button 或许多其他自定义绘制示例。

标签: c# winforms


【解决方案1】:

嗯,有两种方法可以改变按钮的样式和颜色。第二个仅适用于 Visual Studio(我认为)。

1)。 从代码更改按钮属性

您也可以从代码中简单地访问按钮属性。下面的简单示例实现了这一点。

            Button SButton = new Button();

            SButton.Location = new Point(120, 90);
            SButton.Size = new Size(70, 35);
            SButton.BackColor = Color.DarkCyan;
            SButton.ForeColor = Color.DarkBlue;
            SButton.FlatStyle = FlatStyle.Flat;
            SButton.Text = "Click Me";
            SButton.Visible = true;

            this.Controls.Add(SButton as Control);

2)。 **使用 Designer 更改按钮样式、颜色和字体 **(使用 Visual Studio)

只需单击设计器中的按钮,转到属性并将Flat Style更改为Flat(或根据您的需要选择任何其他),然后选择BackColorForeColor 来自属性。同样,也可以在按钮的Font属性中选择不同的Font等。

【讨论】:

  • 我的意思是完全控制渲染过程,而不是简单地改变颜色。
猜你喜欢
  • 2011-07-05
  • 1970-01-01
  • 2017-01-29
  • 2011-05-13
  • 1970-01-01
  • 2015-12-25
  • 2014-01-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多