掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
BitmapにBitmapを重ねるには (ID:12504)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
描くビットマップの Transparent を True にし、Canvas.Draw() で描くと 背景を透過できます。ヘルプで見てください。 新規で以下のプログラムを試してください type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); private { Private 宣言 } public bmp:array[0..4] of TBitmap; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var i:integer; color:array[0..4] of TColor; begin color[0] := clGreen;color[1] := clBlue;color[2] := clRed; color[3] := clYellow;Color[4] := clLime; for i := 0 to 4 do begin bmp[i] := TBitmap.Create; bmp[i].Width := 50; bmp[i].Height := 50; bmp[i].Canvas.Font.Height := -30; bmp[i].Canvas.Font.Color := color[i]; bmp[i].Canvas.TextOut(0,0,'★'); bmp[i].Transparent := true; end; Randomize; end; procedure TForm1.FormDestroy(Sender: TObject); var i:integer; begin for i := 0 to 4 do bmp[i].Free; end; procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Canvas.Draw(X-15,Y-15,bmp[Random(5)]); end; フォームをクリックすると星型が背景透過で描かれます。重ねて見ると分かります。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.