从模式,前景和背景颜色创建位图

时间:2014-02-25 23:42:47

标签: delphi bitmap

我想从graphics.brushstyles模式和两个颜色整数创建位图,并将它们加载到ImageList中。我在Windows 7 64位计算机上使用Delphi 2007。显示了我使用的代码。我希望这至少可以编译,但会出现以下错误:

[DCC Error] QuickUnitGraph.pas(2912): E2003 Undeclared identifier: 'Create'
[DCC Error] QuickUnitGraph.pas(2913): E2003 Undeclared identifier: 'SetSize'
[DCC Error] QuickUnitGraph.pas(2914): E2003 Undeclared identifier: 'Canvas'
[DCC Error] QuickUnitGraph.pas(2920): E2010 Incompatible types: 'TBitmap' and 'tagBITMAP'

在进一步调查中,我发现Delphi认为变量Bmp是一个windows.TagBITMAP,它有一组不同的属性和方法。我在这里做错了什么?

procedure CreateBitMap(il:TImageList; Pattern, Foreground, Background:integer);

var
  Bmp: TBitmap;

begin
  Bmp := TBitmap.Create(nil);
  Bmp.SetSize(50,50);
  Bmp.Canvas.Brush.Style := TBrushStyle(Pattern);
  Bmp.Canvas.Brush.Color := TColor(Foreground);
  Bmp.Canvas.Pen.Color := TColor(Background);
  il.Add(Bmp);
end;

0 个答案:

没有答案