22

我在 C# 中有一个表单,我想在 3 个TextBox控件中输入红色、绿色和蓝色并制作新颜色。例如:red=3, green=2, blue=5 当我点击“MAKE COLOR”按钮时,标签会显示新颜色。

4

2 回答 2

40

让我们假设您有一些类似于此的代码:

int red = Convert.ToInt32(RedColorComponentValueTextBox.Text);
int green = Convert.ToInt32(GreenColorComponentValueTextBox.Text);
int blue = Convert.ToInt32(BlueColorComponentValueTextBox.Text);
//Don't forget to try/catch this

然后从这些值创建颜色,尝试

Color c = Color.FromArgb(red, green, blue);

然后将标签的ForeColor属性(或BackColor属性 - 不确定您要更改的属性)设置为c.

你需要有

using System.Drawing;

在您的代码文件(或类)序言中。

注意:如果你还想有一个 alpha 组件,你可以试试这个:

Color c = Color.FromArgb(alpha, red, green, blue);

一般提示:如果您想使用表单的 HTML/CSS 颜色规范#RRGGBB,请#335577尝试此模式

int red = 0x33, green = 0x55, blue = 0x77; 
于 2012-12-02T14:39:46.647 回答
4

使用FromRgb创建自定义颜色:

Color myRgbColor = new Color();
myRgbColor = Color.FromRgb(3, 2, 5);
于 2012-12-02T14:40:09.513 回答