分享

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

 delphi_笔记 2019-05-20
复制代码
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;
复制代码

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多