fc2ブログ

4角形の中に線形グラデーション(LinearGradientMode)を描画する

1)Windowsアプリケーションから起動してForm1を用意します。

2)using System.Drawing.Drawing2D; を追加する。

3)プロパティのイベントボタンをクリック。

4)プロパティの右側のScrollBarを下に動かして、Paintをダブルクリック。

5)下記を入力します。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
this.ClientRectangle, Color.Blue, Color.Cyan, LinearGradientMode.Vertical);
g.FillRectangle(lgb, this.ClientRectangle);

6)プロパティのMouseClickをダブルクリックして、下記を入力します。

int x = 30;
int y = 40;
int w = 100;
int h = 80;
// 左上
Graphics g = this.CreateGraphics();
Rectangle rect1 = new Rectangle( x, y, w, h);
LinearGradientBrush lgb1 = new LinearGradientBrush(
rect1, Color.Red, Color.White, LinearGradientMode.Vertical);
g.FillRectangle(lgb1, rect1);
// 右上
Rectangle rect2 = new Rectangle(x + 130, y, w, h);
LinearGradientBrush lgb2 = new LinearGradientBrush(
rect2, Color.Red, Color.White, LinearGradientMode.Horizontal);
g.FillRectangle(lgb2, rect2);
// 左下
Rectangle rect3 = new Rectangle(x, y + 110, w, h);
LinearGradientBrush lgb3 = new LinearGradientBrush(
rect3, Color.Red, Color.White, LinearGradientMode.ForwardDiagonal);
g.FillRectangle(lgb3, rect3);
// 右下
Rectangle rect4 = new Rectangle(x + 130, y + 110, w, h);
LinearGradientBrush lgb4 = new LinearGradientBrush(
rect4, Color.Red, Color.White, LinearGradientMode.BackwardDiagonal);
g.FillRectangle(lgb4, rect4);
// Dispose
lgb1.Dispose();
lgb2.Dispose();
lgb3.Dispose();
lgb4.Dispose();
g.Dispose();

LinearGradientMode_18.jpg

7)デバッグ開始(F5)します。

LinearGradientMode_16.jpg

8)Formをクリックします。

LinearGradientMode_17.jpg




Formに線形グラデーションを右上から左下へ(LinearGradientMode.BackwardDiagonal)描画する

LinearGradientMode 列挙体
線形グラデーションの方向を指定します。
名前空間: System.Drawing.Drawing2D
BackwardDiagonal 右上から左下へのグラデーションを指定します。

Color.FromArgb メソッド (Int32, Color)
指定の新しいアルファ値を使用して、指定の Color 構造体から Color 構造体を作成します。


1)Windowsアプリケーションから起動してForm1を用意します。

2)using System.Drawing.Drawing2D; を追加する。

3)プロパティのイベントボタンをクリック。

4)プロパティの右側のScrollBarを下に動かして、Paintをダブルクリック。

5)下記を入力します。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
this.ClientRectangle,
Color.FromArgb(255, Color.Aqua),
Color.FromArgb(255, Color.DeepPink),
LinearGradientMode.BackwardDiagonal);
g.FillRectangle(lgb, this.ClientRectangle);
lgb.Dispose();
g.Dispose();

LinearGradientMode_12.jpg

6)デバッグ開始(F5)します。

LinearGradientMode_11.jpg

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
g.VisibleClipBounds,
Color.FromArgb(255, Color.White),
Color.FromArgb(255, Color.Black),
LinearGradientMode.BackwardDiagonal);
g.FillRectangle(lgb, g.VisibleClipBounds);
lgb.Dispose();
g.Dispose();

LinearGradientMode_14.jpg






Formに線形グラデーションを左上から右下へ(LinearGradientMode.ForwardDiagonal)描画する

LinearGradientMode 列挙体
線形グラデーションの方向を指定します。
名前空間: System.Drawing.Drawing2D
ForwardDiagonal 左上から右下へのグラデーションを指定します。

Color.FromArgb メソッド (Int32, Color)
指定の新しいアルファ値を使用して、指定の Color 構造体から Color 構造体を作成します。


1)Windowsアプリケーションから起動してForm1を用意します。

2)using System.Drawing.Drawing2D; を追加する。

3)プロパティのイベントボタンをクリック。

4)プロパティの右側のScrollBarを下に動かして、Paintをダブルクリック。

5)下記を入力します。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
this.ClientRectangle,
Color.FromArgb(255, Color.Blue),
Color.FromArgb(255, Color.Yellow),
LinearGradientMode.ForwardDiagonal);
g.FillRectangle(lgb, this.ClientRectangle);
lgb.Dispose();
g.Dispose();

LinearGradientMode_07.jpg

6)デバッグ開始(F5)します。

LinearGradientMode_08.jpg

this.ClientRectangleをg.VisibleClipBoundsに置き換えても同様です。
色も変えてみます。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
g.VisibleClipBounds,
Color.FromArgb(255, Color.White),
Color.FromArgb(255, Color.Crimson),
LinearGradientMode.ForwardDiagonal);
g.FillRectangle(lgb, g.VisibleClipBounds);
lgb.Dispose();
g.Dispose();

LinearGradientMode_09.jpg




Formに線形グラデーションを左から右へ(LinearGradientMode.Horizontal)描画する

LinearGradientMode 列挙体
線形グラデーションの方向を指定します。
名前空間: System.Drawing.Drawing2D
Horizontal 左から右へのグラデーションを指定します。

Color.FromArgb メソッド (Int32, Color)
指定の新しいアルファ値を使用して、指定の Color 構造体から Color 構造体を作成します。このメソッドではアルファ値の 32 ビット値を渡すことができますが、そのアルファ値は 8 ビットに限定されます。


1)Windowsアプリケーションから起動してForm1を用意します。

2)using System.Drawing.Drawing2D; を追加する。

3)プロパティのイベントボタンをクリック。

4)プロパティの右側のScrollBarを下に動かして、Paintをダブルクリック。

5)下記を入力します。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
this.ClientRectangle, Color.FromArgb(100, Color.Magenta), Color.FromArgb(100, Color.Cyan), LinearGradientMode.Horizontal);
g.FillRectangle(lgb, this.ClientRectangle);
lgb.Dispose();
g.Dispose();

LinearGradientMode_06.jpg

6)デバッグ開始(F5)します。

LinearGradientMode_04.jpg

アルファ値を100にするとMagentaを指定したとも思えない色になりますね。


this.ClientRectangleをg.VisibleClipBoundsに置き換えても同様です。
色も変えてみます。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
g.VisibleClipBounds, Color.FromArgb(255, Color.White), Color.FromArgb(150, Color.Green), LinearGradientMode.Horizontal);
g.FillRectangle(lgb, g.VisibleClipBounds);
lgb.Dispose();
g.Dispose();

LinearGradientMode_05.jpg





Formに線形グラデーションを上から下へ(LinearGradientMode.Vertical)描画する

LinearGradientMode 列挙体
線形グラデーションの方向を指定します。
名前空間: System.Drawing.Drawing2D
Vertical 上から下へのグラデーションを指定します。


1)Windowsアプリケーションから起動してForm1を用意します。

2)using System.Drawing.Drawing2D; を追加する。

3)プロパティのイベントボタンをクリック。

4)プロパティの右側のScrollBarを下に動かして、Paintをダブルクリック。

5)下記を入力します。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
this.ClientRectangle,Color.Yellow,Color.Purple,LinearGradientMode.Vertical);
g.FillRectangle(lgb, this.ClientRectangle);
lgb.Dispose();
g.Dispose();

LinearGradientMode_01.jpg

6)デバッグ開始(F5)します。

LinearGradientMode_02.jpg

this.ClientRectangleをg.VisibleClipBoundsに置き換えても同様です。
色も変えてみます。

Graphics g = this.CreateGraphics();
LinearGradientBrush lgb = new LinearGradientBrush(
g.VisibleClipBounds, Color.White, Color.Blue, LinearGradientMode.Vertical);
g.FillRectangle(lgb, g.VisibleClipBounds);
lgb.Dispose();
g.Dispose();

LinearGradientMode_03.jpg




プロフィール

迫(Seko) 廣太郎(koutarou)迫 製作所(Seko Seisakusyo)

Author:迫(Seko) 廣太郎(koutarou)迫 製作所(Seko Seisakusyo)
C#ビギナーブログへようこそ!

最新記事
月別アーカイブ
カテゴリ
FC2カウンター
検索フォーム
リンク