Color.FromArgb Method (Int32, Int32, Int32, Int32)
Assembly: System.Drawing (in system.drawing.dll)
public static Color FromArgb ( int alpha, int red, int green, int blue )
public static function FromArgb ( alpha : int, red : int, green : int, blue : int ) : Color
Not applicable.
Parameters
- alpha
The alpha component. Valid values are 0 through 255.
- red
The red component. Valid values are 0 through 255.
- green
The green component. Valid values are 0 through 255.
- blue
The blue component. Valid values are 0 through 255.
Return Value
The Color that this method creates.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:
-
Creates three brushes, each a different color. Each Color structure that is used to create a brush is created from four component values (alpha, red, green, blue).
-
Uses an imaginary triangle to position three circles.
-
Paints three overlapping circles, each centered on one vertex of the triangle, using a different brush for each circle.
void FromArgb1( PaintEventArgs^ e ) { Graphics^ g = e->Graphics; // Transparent red, green, and blue brushes. SolidBrush^ trnsRedBrush = gcnew SolidBrush( Color::FromArgb( 120, 255, 0, 0 ) ); SolidBrush^ trnsGreenBrush = gcnew SolidBrush( Color::FromArgb( 120, 0, 255, 0 ) ); SolidBrush^ trnsBlueBrush = gcnew SolidBrush( Color::FromArgb( 120, 0, 0, 255 ) ); // Base and height of the triangle that is used to position the // circles. Each vertex of the triangle is at the center of one of the // 3 circles. The base is equal to the diameter of the circles. float triBase = 100; float triHeight = (float)Math::Sqrt( 3 * (triBase * triBase) / 4 ); // Coordinates of first circle's bounding rectangle. float x1 = 40; float y1 = 40; // Fill 3 over-lapping circles. Each circle is a different color. g->FillEllipse( trnsRedBrush, x1, y1, 2 * triHeight, 2 * triHeight ); g->FillEllipse( trnsGreenBrush, x1 + triBase / 2, y1 + triHeight, 2 * triHeight, 2 * triHeight ); g->FillEllipse( trnsBlueBrush, x1 + triBase, y1, 2 * triHeight, 2 * triHeight ); }
public void FromArgb1(PaintEventArgs e)
{
Graphics g = e.get_Graphics();
// Transparent red, green, and blue brushes.
SolidBrush trnsRedBrush = new SolidBrush(
Color.FromArgb(120, 255, 0, 0));
SolidBrush trnsGreenBrush = new SolidBrush(
Color.FromArgb(120, 0, 255, 0));
SolidBrush trnsBlueBrush = new SolidBrush(
Color.FromArgb(120, 0, 0, 255));
// Base and height of the triangle that is used to position the
// circles. Each vertex of the triangle is at the center of one of the
// 3 circles. The base is equal to the diameter of the circles.
float triBase = 100;
float triHeight = (float)(Math.sqrt((3 * (triBase * triBase) / 4)));
// Coordinates of first circle's bounding rectangle.
float x1 = 40;
float y1 = 40;
// Fill 3 over-lapping circles. Each circle is a different color.
g.FillEllipse(trnsRedBrush, x1, y1, 2 * triHeight, 2 * triHeight);
g.FillEllipse(trnsGreenBrush, x1 + triBase / 2, y1 + triHeight,
2 * triHeight, 2 * triHeight);
g.FillEllipse(trnsBlueBrush, x1 + triBase, y1,
2 * triHeight, 2 * triHeight);
} //FromArgb1
Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.