我是Visual Studio 2010的新手。 我想知道如何将表单的背景颜色设置为c ++中的渐变颜色。 我在网上看到了一些源代码,但那是针对Visual Basic .NET的。
感谢您的帮助:)
答案 0 :(得分:3)
您将不得不习惯于在vb.net或C#语法中查找.NET示例代码,因此通常不会在C ++ / CLI中编写Winforms代码。翻译是相当机械化的,所以一定要在C ++ / CLI编程上获得一本不错的书,这样你就可以自己喋喋不休。
Anyhoo,代码非常简单,只需覆盖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);
}