![]() ![]() ![]()
|
BREW C++ ライブラリ & GUI フレームワーク & XML ミドルウェア : SophiaFramework 4.1 |
R ( 赤 )、G ( 緑 )、B ( 青 )、alpha ( アルファ値 ) の値を 0 〜 255 の範囲で設定します。
例 12.36. 色の定義
// 色を表すクラスの定義(左から R、G、B、alpha) // SFXRGBColor(0xFF, 0x00, 0x00, 0x00) = 赤色 SFXRGBColor color(0xFF, 0x00, 0x00, 0x00);
例 12.37. 塗りつぶし
// 長方形 SFXRectangle rectangle(30, 30, 40, 40); // 長方形を塗りつぶす ( 第 2 引数は SFXRGBColor 型 ) graphics->FillRectangle(rectangle, color); // 青色を指定して長方形を塗りつぶす // SFXRGBColor( 0x00, 0x00, 0xFF, 0x00 ) = 青色 graphics->FillRectangle(SFXRectangle(90, 30, 40, 40), SFXRGBColor(0x00, 0x00, 0xFF, 0x00));
例 12.38. 色の取得
UInt08 r = color.GetRed(); // r = 0xFF UInt08 g = color.GetGreen(); // g = 0x00 UInt08 b = color.GetBlue(); // b = 0x00 UInt08 a = color.GetAlpha(); // a = 0x00
例 12.39. 色の設定
// R、G、B、アルファを設定する color.Set(0x00, 0xFF, 0x99, 0x00); // R、G、B を 0x33、アルファを 0x00 に設定する color.Set(0x33, 0x00); // 個別に設定する方法 color.SetRed(0x00); color.SetGreen(0xFF); color.SetBlue(0x99); color.SetAlpha(0x00);
例 12.40. 色の演算
color.Set(0x30, 0xE0, 0x40, 0x00); // 加算 color.AddRed(0x60); // color の R 値 = 0x90 color.AddGreen(0x60); // color の G 値 = 0xFF // ( オーバー フローは適切に処理される ) color.Add(0x33, 0x10); // R, G, B に 0x33 を、アルファに 0x10 を加算する // 減算 color.SubBlue(0x60); // color の B 値 = 0x00 // ( アンダー フローは適切に処理される ) color.Sub(0x33, 0x10); // R, G, B に 0x33 を、アルファに 0x10 を減算する
枠 ( frame ) の色と影 ( shadow ) の色を RGB 色で設定します。
例 12.41. 色の設定
SFXFrameColor frameColor; frameColor.SetFrame(SFXRGBColor(0xFF, 0x00, 0x00, 0x00)); // 枠の色を設定する frameColor.SetShadow(SFXRGBColor(0x99, 0x99, 0xFF, 0x00)); // 影の色を設定する
ライト、ベース、ダークの各部分の色を RGB 色で設定します。
例 12.44. 色の設定
SFXBevelColor bevelColor; bevelColor.SetBase(SFXRGBColor(0xFF, 0x00, 0x00, 0x00)); // ベース色を設定する bevelColor.SetLight(SFXRGBColor(0x00, 0xFF, 0x00, 0x00)); // ライト色を設定する bevelColor.SetDark(SFXRGBColor(0x00, 0x00, 0xFF, 0x00)); // ダーク色を設定する
図形や文字列を描画するとき、色を指定する方法は 2 種類あります。
例 12.47. 描画関数の引数で指定する方法
SFXGraphicsPtr graphics = SFXGraphics::GetInstance();
SFXRGBColor color(0x00, 0xFF, 0x00, 0x00);
// 文字列を color 色で描画する
graphics->DrawText("text", SFXGrid(10, 20), color);
例 12.48. SetForeColor 関数を使って指定する方法
SFXGraphicsPtr graphics = SFXGraphics::GetInstance(); SFXRGBColor color(0x00, 0xFF, 0x00, 0x00); // 前景色を color に設定する graphics->SetForeColor(color); // 文字列を color 色で描画する graphics->DrawText("text", SFXGrid(10, 20));
![]() |
注意 |
|---|---|
引数で色を指定した場合、DrawText() 関数の内部で SetForeColor() 関数が呼び出されます。DrawText() 関数を複数回呼び出す場合は後者を使います。 | |
|
Copyright (C) 2002 - 2008 Sophia Cradle, Inc. All Rights Reserved. |
![]() ![]() ![]()
|