画像/SVG

Q4
ラベルやボタン、FlexViewの一覧に表示する画像を透過表示したい

A4
[解決方法]
ImageListクラスのMaskUse、MaskColR、MaskColG、MaskColBプロパティを利用することで
png画像の指定の色を透過することが出来ます。

ラベルやボタンなど、オブジェクトに読み込む画像をImageListクラスで生成し、MaskUse
プロパティを$TRUEに設定、透過させたい色をMaskColR、MaskColG、MaskColBプロパティ
に設定します。

例えば、「赤」色の箇所を透過させたい場合は、

 MaskUse = $TRUE;
 MaskColR = 255;
 MaskColG = 0;
 MaskColB = 0;

と設定します。

画像の背景色を透過させたい、といった場合には、表示させたい部分には利用されていない
色で背景色を塗りつぶしていただき、その色のRGBをそれぞれMaskColR、MaskColG、
MaskColBプロパティに設定します。




※各「OK」画像を表示しているラベルは、画像の透過指定を見やすくするため、
  Transparentプロパティを $TRUE に設定しています。


[サンプルコード]

◆透過指定した画像をImageLabelに設定するサンプル

Form Form1 {

    ImageList imglst1 {
        IconWidth = 100;
        IconHeight = 40;
        LoadImage("ok.png");
		
        /* 画像のマゼンダ色の部分を透過表示します */
        MaskUse = $TRUE;
        MaskColR = 255;
        MaskColG = 0;
        MaskColB = 255;
    }

    ImageLabel ImageLabel1 {
        /* 透過指定したpng画像を表示 */
        SetImage( ^.imglst1.GetImage( 0 ) );
    }
}
CRSファイル形式のサンプルを
  「画像の透過表示サンプル (Pct_008.zip)
よりご利用いただけます。

管理番号:Pct_008
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ