リストボックス : 文字に色を付ける方法
行全体が同じ色でいいなら、プロパティで「行フォントカラー配列」に、たとえば名前が「vCH01_lstCH_FontColors」のようなlongintの配列を用意して、プロパティに指定します。同様に背景色も行単位で指定することができます。
それでは、この行のこの列だけ赤色で表示したい、場合はどうすればいいのでしょうか。次です。
1.リストボックスのオブジェクトプロパティで「マルチスタイル」をチェック
2.表示列は文字列で宣言
ARRAY TEXT(vCH01_lstCH_DATEstr;0)
3.次のソースを追加
// 20160321 wat 会社は赤色で表示
C_POINTER($pColumn3)
$pColumn3:=OBJECT Get pointer(Object named;”vCH01_lstCH_DATEstr”)
C_LONGINT($sizeOfAry;$i)
$sizeOfAry:=Size of array(vCH01_lstCH_DATEstr)
For ($i;1;$sizeOfAry)
If (vCH01_lstCH_KUBUN{$i}=”会社”)
$pColumn3->{$i}:=”“+String(vCH01_lstCH_DATE{$i})+””
Else
$pColumn3->{$i}:=”“+String(vCH01_lstCH_DATE{$i})+””
End if
このように、リストボックスの列にマルチスタイルに指定すると、セルごとに異なるHTMLタグを指定/表示できるようになります。
例では、vCH01_lstCH_DATEstrの列を表示して、日付型であるvCH01_lstCH_DATE列は非表示にしています。
元のサンプルは4D社からv13のソースを入手、v15でも動作確認済みです。