既存のコマンドが改良され,さらに便利になりました。フォームオブジェクトのカラーは,数値だけでなく,直感的なCSS文字列でも指定することができます。従来のような4バイトの倍長整数(0x00RRGGBB)では,すぐに色がイメージできなかったかもしれません。255(0xFF)とではなく,単純に”blue”と記述できれば良いのに,と感じていたデベロッパーには朗報です。17r6では,CSS文字列がサポートされるようになりました!
CSS文字列がサポートされるようになったコマンドは,OBJECT SET RGB COLORS, LISTBOX SET ROW COLOR, LISTBOX SET GRID COLOR です。
コマンドの改良により,下記の要領でオブジェクトの色指定ができるようになりました。
$color:="blue"
$color:="#0000FF" // または #FF
$color:="RGB(0,0,255)"
使用例
OBJECT SET RGB COLORS コマンドには,前景色と背景色がそれぞれ文字列で渡せるようになりました。コードを記述するのが簡単になるだけでなく,可読性も向上します。
OBJECT SET RGB COLORS(*;"text";"red";"Yellow")
// 従来の表記 OBJECT SET RGB COLORS(*;"text";0xFF0000;0xFFFF00)
それだけではありません。OBJECT GET RGB COLORS コマンドからも文字列でCSSカラーが返されるようになりました。
C_TEXT($front;$back)
OBJECT GET RGB COLORS(*;"rectangle";$front;$back)
ALERT($front+"/"+$back) // #0000FF/#90EE90 が返される
リストボックスのコマンドも同じように改良されていますが,注意点があります。LISTBOX SET ROW COLOR にCSS文字列が渡された場合,リストボックスや列のカラーを制御するための配列には,数値に変換された値が代入されることに留意してください。
サポートされているCSSカラーネームの一覧はドキュメントに掲載されています。
早速,HDIをダウンロードして,改良コマンドを試してみるのはいかがでしょうか。