Biz/Designer

Q4
カラーパレットの操作
[内容]
デフォルトのカラーパレット以外の色を利用したい

A4

[解決方法]
setPallette関数を使って、カラーコードが表現する色を変更できます。
標準カラーパレット112色全ての色の変更が可能です。setPallette関数による設定は、Biz/Browser実行時に有効となります。

またプロジェクトパレットを設定することで、変更したカラーパレットをプロジェクト内で共通に利用することができます。プロジェクトパレットに加えた変更は、Biz/Designer上でのデザイン時にのみ有効です。

2つの機能を組み合わせて、以下のように便利に使うことができます。

便利な使い方 -1(プロジェクトパレット設定とsetPallette関数)

・ メニュー > プロジェクト > 設定 > パレット設定で、任意のカラーコードが表現する色を変更し、「設定」ボタンをクリックし、「OK」ボタンで設定を保存します。

・ プロパティビューでBgColor、FgColorの色選択時に表示されるカラーパレットに、上記設定が反映され変更した色をデザイン上で使用できます。

・ 新規に設定した色は、setPallette関数でCRS内に記述することで、Biz/Browser実行時にも反映されるようになります。スクリプトペインを表示し、スクリプト先頭で、ツール > プロジェクトパレット設定挿入 を選ぶと、新規に設定した色に対応するsetPallette関数が自動的に記述されます。

便利な使い方−2(プロジェクトパレットの再利用)

・ メニュー > プロジェクト > 設定 > パレット設定で設定したパレットを、 「エクスポート」ボタンで*.bplというパレット情報ファイルに書き出すことができます。

・ 上記で作成したファイルを同上のパレット設定画面で「インポート」することで、他のプロジェクトでも再利用することができます。

便利な使い方 −3(setPallette入力サポート)

・ setPallette関数を直接CRSスクリプト内に記述する際に、RGB値による色指定では、表示色の確認が面倒です。スクリプトペインを表示し、メニュー > ツール > setPallette入力サポート を選択すると、カラーパレットが表示され、ここで選択(作成)した色がスクリプトに以下の書式で反映されます。

SetPallette(PalNo, 250, 150, 202);

"PalNo" を変更対象色のインデックス番号-1(相対指定のため)に書き換えることで、setPallette関数の記述が完了します。

setPallette関数の記述例:赤をRGB("66ff66"(16進))に変更する
例1 setPallete($red-1,0x66,0xff,0x66);
例2 setPallete(5,0x66,0xff,0x66);
例3 setPallete(5,102,255,102);

setPallette:
オンラインマニュアル > Biz/Browser3.1 CRSマニュアル > グローバル関数 > システム関数 > SetPalette

色のインデックス番号:
オンラインマニュアル > Biz/Browser3.1 CRSマニュアル > オブジェクト> 基本プロパティ > BgColorもしくはFgColor


[サンプルコード]

/*インデックス番号3の$DGRAYを
RGB値199, 183, 200の薄い藤色に変更*/
SetPalette(2, 199, 183, 200);
Form Form1{
	X = 0;
	Y = 0;
	Width = 200;
	Height = 300;
	TextBox TextBox1{
		/*TextBoxのBgColorをカラーインデックス3に設定*/
		/*Designer上ではグレーに見えるが、
		テスト実行すると藤色になる*/
		X = 20;
		Y = 40;
		Width = 150;
		Height = 30;
		BgColor = 3;
	}
}
管理番号:Dsn_004
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ