我需要在 TMenuItem 上绘制透明位图。尽管用不同的方法尝试了很多小时,但我还是没有成功:
var
NewItem: TMenuItem;
ThisBmp: TBitmap;
begin
NewItem := TMenuItem.Create(pmSendToCustomTool);
NewItem.Caption := ThisCaption;
NewItem.Bitmap.SetSize(16,16);
NewItem.Bitmap.PixelFormat := pf32bit;
NewItem.Bitmap.Transparent := True;
NewItem.Bitmap.TransparentColor := clFuchsia;
ThisBmp := TBitmap.Create;
try
ThisBmp.SetSize(16,16);
ThisBmp.PixelFormat := pf32bit;
ThisBmp.Transparent := True;
ThisBmp.Canvas.Brush.Color := clFuchsia;
ThisBmp.TransparentColor := clFuchsia;
MySystemImageList1.GetBitmap(AIndex, ThisBmp);
CodeSite.Send('ThisBmp', ThisBmp);
NewItem.Bitmap.Assign(ThisBmp);
CodeSite.Send('NewItem.Bitmap', NewItem.Bitmap);
finally
ThisBmp.Free;
end;