StringToColor関数の働き・役割
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/077c64c986b99fbe0068f54f43aa1a08-1024x585.webp)
StringToColor関数は、文字列で表現された色情報をColor型の値に変換するための関数です。例えば、「RGB」形式の文字列や、事前定義されたウェブカラー名の文字列をColor型に変換します。StringToColor関数は、色の設定や変更をプログラムで簡単に行うために使用されます。
※Color型の値を「RGB」形式の文字列や、事前定義されたウェブカラー名の文字列にするColorToString関数とは逆方向の変換を行います。
StringToColor関数の引数について
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/00b4e594621775f84c5e6abbab1e5c88-1-1024x585.webp)
StringToColor関数は、次のように定義されています。
color StringToColor(
string color_string // 色の文字列表現
);
第1引数: color_string
種類: string型
説明: 「RGB」形式の色や、事前定義されたウェブカラーの名前を含む文字列を指定します。
StringToColor関数の戻り値について
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/b48dbf9b0f6b6d7b3cbb54a8f3df07b9-1024x585.webp)
StringToColor関数は、Color型の値を返します。この値は、指定された色のRGB成分を持つ整数値です。
StringToColor関数を使う際の注意点
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/df7bafb07c9c69af78bf5715abd6e0bd-1024x585.webp)
- 正しい形式で色を指定する必要があります。「引数」の形式は各成分が0から255の範囲であることを確認してください。
- 事前定義されたウェブカラー名を使用する場合、正確な名称を指定する必要があります。
StringToColor関数を使ったサンプルコード
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/83551e58be2cefb2e25b2be1a498bfef-1024x585.webp)
以下は、StringToColor関数を使用して色を変換し、その結果をエキスパートログに出力するサンプルコードです。
// OnStart関数はスクリプトの実行が開始されたときに自動的に呼び出されます
void OnStart()
{
// 色を表す文字列を定義します
string colorString1 = "0,127,0"; // 緑色のRGB値
string colorString2 = "clrRed"; // 事前定義されたウェブカラー名
// 文字列をcolor型に変換します
color colorValue1 = StringToColor(colorString1);
color colorValue2 = StringToColor(colorString2);
// 結果をエキスパートログに出力します
Print("Color value for '0,127,0': ", colorValue1);
Print("Color value for 'clrRed': ", colorValue2);
}
サンプルコードに使われた関数や文法要素の簡単な解説
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/2c50b1418a1d062f6df5cb2683737d93-1024x585.webp)
OnStart関数
OnStart関数は、スクリプトが実行されるときに自動的に呼び出される関数で、スクリプトの開始点となります。
StringToColor関数
StringToColor関数は、文字列をColor型に変換する関数で、RGB形式やウェブカラー名をサポートしています。
Print関数
Print関数は、指定したメッセージをエキスパートログに出力するために使用されます。この例では、変換されたColor型の値を表示しています。
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/6270e79a44e5e32150f53c645cf02ff7-1024x585.webp)