FMX.Colors
FMX.Colors ユニットは、FireMonkey の色関連のクラスやメソッドが登録されているユニットです。
FMX.Colors ユニットの有用な機能を紹介していくシリーズです!
MakeChessBoardBrush
MakeChessBoardBrush は、透明を示す格子模様を描く Brush を生成してくれます。
MakeChessBoardBrush(Canvas.Fill.Bitmap, 5);
第1引数は、TBrushBitmap 型の変数を指定します。
ここに格子模様が設定されます。
第2引数は、格子の1つの大きさを指定します。
これで、Fill.Bitmap に格子を設定してくれるので、Fill○○○ を呼び出すと、その範囲が透明を表す格子で塗りつぶされるという訳です。
例えば、TPaintBox.OnPaint にこのようなコードを書くと
procedure TForm1.PaintBox1Paint(Sender: TObject; Canvas: TCanvas);
begin
MakeChessBoardBrush(Canvas.Fill.Bitmap, 8);
Canvas.Fill.Kind := TBrushKind.Bitmap;
Canvas.FillEllipse(PaintBox1.LocalRect, 1);
end;
こんな風に透明を表す格子が描けます。
おわりに
TColorBox に代表される透明を示す格子はこうやって描かれていたんですね。
コミュニティ紹介
Delphi のコミュニティを紹介します。
Delphi Discord Server(最も活発)
Delphi に関する質問・最新情報・雑談など、とにかく情報が早いコミュニティです。
お気軽に参加できます。
Delphi Discord Server 紹介ページ
※こちらは招待リンクそのものではありません。招待リンクは遷移先ページにあります。
その他のコミュニティ
Qiita のこちらの記事に、日本語圏で参加しやすいコミュニティをまとめています。
