代码如下:
procedure TElevatorB.DrawBk;
var
 Bmp,B2:TBitMap;
begin
    Bmp:=TBitmap.Create;
  try
    Hositwal.Picture.Assign(Nil); //Hositwal是一个TImage控件    Bmp.LoadFromResourceName(hinstance,'FBBK');
      //Hositwal.Canvas.Brush.Bitmap:=Bmp;
    Hositwal.Canvas.Brush.Color:=clgray;
    Hositwal.Canvas.FillRect(Rect(0,0,45,120));    Bmp.LoadFromResourceName(hinstance,'FBK');
     //Hositwal.Canvas.Brush.Bitmap:=Bmp;
    Hositwal.Canvas.Brush.Color:=clRed;
    Hositwal.Canvas.FillRect(Rect(0,120,45,210));  finally
    FreeAndNil(Bmp);
  end;
end;如果使用Brush.Color就正常。使用BMP就只能看到FBBK位图填充的效果。
如果建立两个BMP,就正常,代码如下:
procedure TElevatorB.DrawBk;
var
 Bmp,B2:TBitMap;
begin
    Bmp:=TBitmap.Create;
  B2:=TBitmap.Create;
  try
    Hositwal.Picture.Assign(Nil); //Hositwal是一个TImage控件    Bmp.LoadFromResourceName(hinstance,'FBBK');
    Hositwal.Canvas.Brush.Bitmap:=Bmp;
    Hositwal.Canvas.FillRect(Rect(0,0,45,120));    Bmp.LoadFromResourceName(hinstance,'FBK');
    Hositwal.Canvas.Brush.Bitmap:=B2;
    Hositwal.Canvas.FillRect(Rect(0,120,45,210));  finally
    FreeAndNil(Bmp);
    FreeAndNil(B2);
  end;
end;想请教一个,第二次LoadFromResouceName为何不改变呢?