DrawGrid 做图片显示 代码简单 参考性强 (Delphi7)

 
运行效果图
 
procedure TfrmMain.GridDrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  ACanvas:TCanvas;
  R:TRect;
  Bmp:TBitMap;
begin
  ACanvas := Grid.Canvas;
  ACanvas.Brush.Color := clGreen;
  Bmp := GetPicture(ACol,ARow);
  if Bmp <> nil then
  begin
    R := Rect;
    R.Left := R.Left + 5;
    R.Top  := R.Top  + 5;
    R.Right := R.Right - 5;
    R.Bottom := R.Bottom - 5;
    ACanvas.StretchDraw(R,Bmp);
  end;

end;

function TfrmMain.GetPicture(ACol, ARow: Integer): TBitMap;
var
  Index:Integer;
begin
  Result := nil;
  Index := ARow * Grid.ColCount + ACol;
  if Index <= PicList.Count - 1 then
    Result := TBitMap(PicList.Items[Index]);
end;

procedure TfrmMain.FormCreate(Sender: TObject);
var
  Bmp:TBitMap;
  Index:Integer;
  AFileName:string;
begin
  PicList := TList.Create();
  for Index := 1 to 18 do
  begin
    AFileName := format(ExtractFilePath(Application.ExeName) + 'Image\%d.bmp',[Index]);
    Bmp := TBitMap.Create();
    Bmp.LoadFromFile(AFileName);
    PicLIst.Add(Bmp);
  end;

end;

 

 
 
 
 

转载于:https://www.cnblogs.com/lwm8246/p/3261093.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值