我是使用 Visual Studio 2010 的新手。我想知道如何在 c++ 中将表单的背景颜色设置为渐变色。我在网上看到了一些源代码,但那是针对 Visual Basic .NET 的。
感谢你的帮助 :)
我是使用 Visual Studio 2010 的新手。我想知道如何在 c++ 中将表单的背景颜色设置为渐变色。我在网上看到了一些源代码,但那是针对 Visual Basic .NET 的。
感谢你的帮助 :)
您将不得不习惯于在 vb.net 或 C# 语法中查找 .NET 示例代码,在 C++/CLI 中编写 Winforms 代码并不常见。翻译是相当机械的,所以一定要买一本关于 C++/CLI 编程的书,这样你就可以自己把它弄得乱七八糟了。
无论如何,代码非常简单,只需重写 OnPaintBackground 方法并修改构造函数,以便在更改大小时表单将自行重绘:
protected:
virtual void OnPaintBackground(PaintEventArgs^ e) override {
System::Drawing::Drawing2D::LinearGradientBrush brush(Point::Empty, Point(this->ClientSize.Width, this->ClientSize.Height), Color::Yellow, Color::Blue);
e->Graphics->FillRectangle(%brush, 0, 0, this->ClientSize.Width, this->ClientSize.Height);
}
构造函数:
Form1(void) {
InitializeComponent();
SetStyle(ControlStyles::ResizeRedraw, true);
}