OBJECT SET RGB COLORS
OBJECT SET RGB COLORS ( * ; object : Text ; foregroundColor : Text, Integer {; backgroundColor : Text, Integer {; altBackgrndColor : Text, Integer {; borderColor : Text, Integer}}} )
OBJECT SET RGB COLORS ( object : Variable, Field ; foregroundColor : Text, Integer {; backgroundColor : Text, Integer {; altBackgrndColor : Text, Integer {; borderColor : Text, Integer}}} )
| 引数 | 型 | 説明 | |
|---|---|---|---|
| * | 演算子 | → | 指定時, Objectはオブジェクト名 (文字列) 省略時, Objectはフィールドまたは変数 |
| object | any | → | オブジェクト名 (* 指定時), または フィールドまたは変数 (* 省略時) |
| foregroundColor | Text, Integer | → | 前景色のRGBカラー |
| backgroundColor | Text, Integer | → | 背景色のRGBカラー |
| altBackgrndColor | Text, Integer | → | 奇数行の背景色RGBカラー |
| borderColor | Text, Integer | → | 境界線のRGBカラー値 ("" = 変更なし) |
履歴
| リリース | 内容 |
|---|---|
| 21 R5 | borderColor 引数に対応 |
| 17 R6 | 変更 |
| 14 | 変更 |
| 12 | 名称変更 |
| 2004 | 変更 |
| <6 | 初出 |
説明
OBJECT SET RGB COLORSコマンドは、object 引数とオプションの * 引数で指定したオブジェクトの前景色と背景色を変更します。コマンドを適用するオブジェクトに応じて、さらに2つのカラー引数を使用できます。
オプションの * 引数を指定した場合、objectはオブジェクト名です (文字列) 。オプションの * 引数を省略すると、objectはフィールドまたは変数です。この場合、文字列ではなくフィールドまたは変数参照 (フィールドまたは変数のみ) を指定します。オブジェクト名に関する詳細はオブジェクトプロパティ を参照してください。
オプションの引数altBackgrndColorを使用して、奇数行の背景色を設定することができます。この引数は、指定されたオブジェクトがリストボックスまたはリストボックスの列である場合にのみ使用できます。この引数を使用した場合、backgroundColor引数は偶数行に対してのみ使用されます。奇数行背景色を使用すると、リストがより読みやすくなります。
object がリストボックスオブジェクトを指す場合、奇数行背景色はリストボックス全体に対して使用されます。object がリストボックスの任意の列を指す場合、設定した色はその列に対してだけ使用されます。
オプションの borderColor 引数を使用すると、実行時に境界線の色を変更できます。この引数は borderColor プロパティをサポートするオブジェクトにのみ適用できます。また、境界線スタイルを "plain" または "dotted" にする必要があります(カスタムスタイルのボタンを除く)。詳細については、"境界線の色"を参照してください。
borderColor 引数はバイナリデータベースでは使用できません。
foregroundColor、backgroundColor、altBackgrndColor、および/または borderColor に "" (空の文字列) を渡すと、色を変更せずに保持できます。
カラーの定義
foregroundColor と、必要に応じて backgroundColor、altBackgrndColor、borderColor 引数にRGBカラー値を指定します。次の形式を使用できます:
| フォーマット名 | 型 | 詳細 | 例 |
|---|---|---|---|
| CSS カラー名 | テキスト | 標準のCSS2 カラー名。
| "red", "cyan", "lightblue" |
| CSS カラー "#rrggbb" シンタックス | テキスト | 標準のCSS2 16進数カラーコード:
| "#ff0000", "#00FFFF", "#ADD8E6" |
| CSS カラー "rgb(r,g,b)" シンタックス | テキスト | 標準のCSS2 rgb カラーコード:
| "rgb(255,255,0)", "rgb(255,0,0)" |
| 4-バイトRGB 値 | 倍長整数 | 4-バイトの倍長整数(フォーマット0x00rrggbb)。16進数の値をとります:
| 0x00000000, 0x00FF7F7F |
| 4D "system" カラー定数 | 倍長整数 | オブジェクトを自動カラーで描画する際に4Dが使用するカラー。利用可能定数は以下の通り(SET RGB COLORS テーマ):
| 注: 自動カラーは、システムに依るとともに、そのカラーが適用されるオブジェクトの種類によっても変わります。 |
例題 1
以下のフォームにはvsColorValueとvsColorという2つの入力不可変数とthRed、thGreen、thBlueという3つのサーモメータが含まれます。

以下は、これらのオブジェクト用メソッドです:
// vsColorValue入力不可オブジェクトメソッド
Case of
:(FORM Event.code=On Load)
vsColorValue:="0x00000000"
End case
// vsColor入力不可変数オブジェクトメソッド
Case of
:(FORM Event.code=On Load)
vsColor:=""
OBJECT SET RGB COLORS(vsColor;0x00FFFFFF;0x0000)
End case
// thRed サーモメーターオブジェクトメソッド
CLICK IN COLOR THERMOMETER
// thGreen サーモメーターオブジェクトメソッド
CLICK IN COLOR THERMOMETER
// thBlue サーモメーターオブジェクトメソッド
CLICK IN COLOR THERMOMETER
3つのサーモメータから呼ばれるプロジェクトメソッドは以下のとおり:
// CLICK IN COLOR THERMOMETER プロジェクトメソッド
OBJECT SET RGB COLORS(vsColor;0x00FFFFFF;(thRed<<16)+(thGreen<<8)+thBlue)
vsColorValue:=String((thRed<<16)+(thGreen<<8)+thBlue;" & x")
If(thRed=0)
vsColorValue:=Substring(vsColorValue;1;2)+"0000"+Substring(vsColorValue;3)
End if
サーモメータの値からカラー値を計算するためにを使用しています。
実行されるとフォームは以下のように表示されます:

例題 2
背景色を透明に、フォントカラーを明るい色に設定する場合:
OBJECT SET RGB COLORS(*;"myVar";Light shadow color;Background color none)
例題 3
リストボックスの境界線の色だけを変更します:
//境界線スタイルを plain に変更 (デフォルトは system)
OBJECT SET BORDER STYLE(*; "listOfDays"; Border Plain)
//境界線の色を赤に設定
OBJECT SET RGB COLORS(*; "listOfDays"; ""; ""; ""; "#ff0000")
参照
OBJECT GET RGB COLORS
Select RGB color
プロパティ
| コマンド番号 | 628 |
| スレッドセーフである | no |